摘要:
###1. B 树的介绍 B-tree 树即 B 树,B 即 Balanced,平衡的意思。有人把 B-tree 翻译成 B-树,容易让人产生误解。会以为 B-树是一种树,而 B 树又是另一种树。实际上,B-tree 就是指的 B 树。 前面已经介绍了 2-3 树和 2-3-4 树,他们就是 B 树 阅读全文
摘要:
###1. 2-3 树是最简单的 B 树结构, 具有如下特点: 2-3 树的所有叶子节点都在同一层.(只要是 B 树都满足这个条件) 有两个子节点的节点叫二节点,二节点要么没有子节点,要么有两个子节点 有三个子节点的节点叫三节点,三节点要么没有子节点,要么有三个子节点 2-3 树是由二节点和三节点构 阅读全文
摘要:
###1.二叉树的问题分析 二叉树的操作效率较高,但是也存在问题, 请看下面的二叉树 二叉树需要加载到内存的,如果二叉树的节点少,没有什么问题,但是如果二叉树的节点很多(比如 1 亿), 就存在如下问题: 问题 1:在构建二叉树时,需要多次进行 i/o 操作(海量数据存在数据库或文件中),节点海量, 阅读全文
摘要:
###1.看一个案例(说明二叉排序树可能的问题) 给你一个数列{1,2,3,4,5,6},要求创建一颗二叉排序树(BST), 并分析问题所在 左边 BST 存在的问题分析: 左子树全部为空,从形式上看,更像一个单链表. 插入速度没有影响 查询速度明显降低(因为需要依次比较), 不能发挥 BST的优势 阅读全文
摘要:
###1.先看一个需求 给你一个数列 (7, 3, 10, 12, 5, 1, 9),要求能够高效的完成对数据的查询和添加 ###2.解决方案分析 使用数组 数组未排序, 优点:直接在数组尾添加,速度快。 缺点:查找速度慢 数组排序,优点:可以使用二分查找,查找速度快,缺点:为了保证数组有序,在添加 阅读全文
摘要:
###1. 基本介绍 赫夫曼编码也翻译为 哈夫曼编码(Huffman Coding),又称霍夫曼编码,是一种编码方式, 属于一种程序算法 赫夫曼编码是赫哈夫曼树在电讯通信中的经典的应用之一 赫夫曼编码广泛地用于数据文件压缩。其压缩率通常在 20%~90%之间 赫夫曼码是可变字长编码(VLC)的一种。 阅读全文