![](https://img-blog.csdnimg.cn/20201014180756923.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据结构与算法
1000sakura
https://home.cnblogs.com/u/1000sakura/
展开
-
【数据结构与算法】二叉树——哈夫曼编码
最近有很多的小朋友问我什么是哈夫曼编码,哈夫曼编码是一种可变字长的编码,那什么是可变字长呢?就是一句话里的每一个字符(ASCII码)它的位数(长度)是不一样的。就像我们一句话(AAAACCCCCDDDDBBE)有A,B,C,D,E五种字符,在这里我们可以用01表示A字符,用001表示B字符,用11表示C字符,用10表示D字符,用000表示E字符。如下图: 既然知道了哈夫曼编码是什么了,那又有...原创 2018-11-25 13:44:36 · 1096 阅读 · 1 评论 -
【数据结构与算法】线性表——删除重复元素
线性表是一种随机存取的结构,和链表不同,链表顺序存取的结构。但是,线性表是一种顺序存储的结构,而链表是链式存储结构。两者都是线性的,但区别不同。 进入主题: 1.假如有一串数据元素,要求删除其中的重复元素。 首先想到的是用两层循环,第一层从第一个元素开始,第二层从第一层元素的下一个元素开始。 就是假如第一层是ai元素,则第二层就为ai+1元素。 函数实现: void Purge1(E...原创 2018-11-25 13:57:22 · 2098 阅读 · 0 评论 -
【数据结构与算法】链表——递增排序
今天看书时偶然想到的问题,书上是要求将一个数据插入一个有序链接的线性链表中,所以我想先进行链表内的数据排序在进行插入数据。 在这里我只写了排序的函数。 函数实现: void Sort(LinkList&list, int &n) { for (int i = 0; i < n - 1; i++) { LinkList p = list, q; q ...原创 2018-11-25 14:05:09 · 1328 阅读 · 0 评论 -
【数据结构与算法】Fibonacci Sequence
学计算机的对 Fibonacci 都并不陌生,在课堂上一讲到递归几乎都会提到 Fibonacci 数列。不久前,我对 Fibonacci 产生了一些兴趣,就在这里把自己的想法给记录下来。 递推公式: 通项公式: 我们还是以最原始的兔子问题为例子: 第一个月有一对兔子,兔子呢按照这种规律生长:当一对兔子两个月成熟后,以后每个月就会出生一对兔子。而且兔子不会死亡。 为了方便区分,我...原创 2019-04-20 11:11:52 · 172 阅读 · 0 评论