
数据结构与算法
文章平均质量分 83
一些简单的数据结构与算法的了解与学习
Bruce_Zhang61
zhang0.cool
展开
-
红黑树 Reb Black Tree
在AVL中提到了,当插入和删除频率较高时,我们选择红黑树来降低因不断的维护平衡带来的时间损耗。在诸多地方(比如JDK1.8的HashMap……)得到了广泛的应用。那么,什么是红黑树,为什么就这么牛逼?我们一起来解开其神秘的面纱~红黑树是一种特定类型的二叉树,它是在计算机科学中用来组织数据比如数字的块的一种结构。[4]红黑树是一种平衡二叉查找树的变体,它的左右子树高差有可能大于 1,所以红黑树不是严格意义上的平衡二叉树(AVL),但 对之进行平衡的代价较低, 其平均统计性能要强于 AVL。[2]原创 2022-08-19 19:42:00 · 334 阅读 · 0 评论 -
平衡树AVL
为解决二叉搜索树退化成一张链表的情况,改进出了AVL(取名与作者和E.M.Landis)必须是一颗BST每个节点的左右子树高度至多相差1AVL树的查找、插入、删除等操作在平均和最坏的情况下都是O(logN),得益于其一直在动态的维护平衡性。原创 2022-08-19 19:26:57 · 174 阅读 · 0 评论 -
二叉搜索树
树是数据结构中必学的一种数据结构。在实际应用中,常见的树结构有二叉搜索树、B树、B+树、AVL树、红黑树、字典树等。B/B+树:主要用于文件系统以及数据库中做索引AVL树:平衡二叉树,windows对进程地址空间的管理用到了AVL红黑树:平衡二叉树的一种改进,广泛的应用在C++STL中,如map、set,以及JDK中的HashMap、TreeMap等Trie(字典树):又经常叫做前缀树,主要用于字符串检索、文本预测、词频统计等。原创 2022-08-19 19:17:24 · 216 阅读 · 0 评论 -
文件的哈夫曼编码与解码
准备一个字符文件,要求:统计该文件中各种字符的频率对各字符进行 Huffman编码,显示每个字符的编码以及将该文件翻译成 Huffman编码文件再将 Huffman编码文件翻译成源文件显示每个字符以一个字节进行二进制编码后的编码文件原创 2021-12-19 23:21:08 · 3791 阅读 · 2 评论 -
链表简单入门
**链表(从一无所知到知道一点点)**C语言中的结构体(struct)原创 2021-01-07 13:53:57 · 1464 阅读 · 9 评论