forethought.top的博客

for designing better code!

二叉树学习(三)哈夫曼树

先来看一个例子: 如果需要传输 一串文本: abcdaabbbc(假设是ascii码) 一个英文字符是 1个字节,那么这里需要1018=80bit(80位来表示) 能否使用某种编码,来减少位的使用,节省空间呢? 比如 高频率出现的字符使用较少的位来表示 低频率出现的字符可以使用相对较多...

2019-02-28 12:51:40

阅读数 48

评论数 0

人见人怕的指针是何许物也

接触过c的小伙伴大多现在没有使用c了,但是如果要问到对c印象最深(最苦逼)的是什么,绝对会回答各种******的指针 c是博主大学开始第一门学习的编程语言,满怀各种幻想,后来学了指针,就又爱又恨了. 话不多说,上简单代码demo来体会一下,用不用指针的区别,以下是完整代码 完整测试代码 ...

2019-02-18 11:52:59

阅读数 43

评论数 0

二叉树学习(二) BST插入,查找与删除

二叉排序树 定义:大小关系:左孩子大于根大于右孩子 的二叉树 特点:中序遍历得到有序序列(升序) 节点的删除:无论是什么情况,都需要保证删除后的中序遍历结果仍然是有序 比如删除前;a,b,c,d,e,f 如果删除c:需要保证删除c后,得到的中序遍历是a,b,d,e,f 删除大体分三种情...

2019-02-16 20:08:07

阅读数 44

评论数 1

二叉树学习(一)普通二叉树的遍历与还原

二叉树是一种很重要的数据结构,一般的操作就是遍历和还原. 有着很多重要的应用,比如红黑树,二叉排序树(也叫二叉搜索树)查找性能很高, jdk8 hashmap是 基于红黑树实现的,如果对二叉树不了解,那么对二叉树的变形(搜索树,平衡树,堆排序)无从入手. 二叉树定义: ...

2019-02-07 18:37:10

阅读数 111

评论数 1

提示
确定要删除当前文章?
取消 删除