上一页 1 2 3 4 5 6 7 8 ··· 19 下一页
摘要: ###1. B 树的介绍 B-tree 树即 B 树,B 即 Balanced,平衡的意思。有人把 B-tree 翻译成 B-树,容易让人产生误解。会以为 B-树是一种树,而 B 树又是另一种树。实际上,B-tree 就是指的 B 树。 前面已经介绍了 2-3 树和 2-3-4 树,他们就是 B 树 阅读全文
posted @ 2021-07-27 11:51 whn051799 阅读(162) 评论(0) 推荐(0) 编辑
摘要: ###1. 2-3 树是最简单的 B 树结构, 具有如下特点: 2-3 树的所有叶子节点都在同一层.(只要是 B 树都满足这个条件) 有两个子节点的节点叫二节点,二节点要么没有子节点,要么有两个子节点 有三个子节点的节点叫三节点,三节点要么没有子节点,要么有三个子节点 2-3 树是由二节点和三节点构 阅读全文
posted @ 2021-07-27 11:44 whn051799 阅读(55) 评论(0) 推荐(0) 编辑
摘要: ###1.二叉树的问题分析 二叉树的操作效率较高,但是也存在问题, 请看下面的二叉树 二叉树需要加载到内存的,如果二叉树的节点少,没有什么问题,但是如果二叉树的节点很多(比如 1 亿), 就存在如下问题: 问题 1:在构建二叉树时,需要多次进行 i/o 操作(海量数据存在数据库或文件中),节点海量, 阅读全文
posted @ 2021-07-27 11:37 whn051799 阅读(63) 评论(0) 推荐(0) 编辑
摘要: ###1.看一个案例(说明二叉排序树可能的问题) 给你一个数列{1,2,3,4,5,6},要求创建一颗二叉排序树(BST), 并分析问题所在 左边 BST 存在的问题分析: 左子树全部为空,从形式上看,更像一个单链表. 插入速度没有影响 查询速度明显降低(因为需要依次比较), 不能发挥 BST的优势 阅读全文
posted @ 2021-07-27 11:29 whn051799 阅读(261) 评论(0) 推荐(0) 编辑
摘要: ###1.先看一个需求 给你一个数列 (7, 3, 10, 12, 5, 1, 9),要求能够高效的完成对数据的查询和添加 ###2.解决方案分析 使用数组 数组未排序, 优点:直接在数组尾添加,速度快。 缺点:查找速度慢 数组排序,优点:可以使用二分查找,查找速度快,缺点:为了保证数组有序,在添加 阅读全文
posted @ 2021-07-27 11:14 whn051799 阅读(124) 评论(0) 推荐(0) 编辑
摘要: ###1. 基本介绍 赫夫曼编码也翻译为 哈夫曼编码(Huffman Coding),又称霍夫曼编码,是一种编码方式, 属于一种程序算法 赫夫曼编码是赫哈夫曼树在电讯通信中的经典的应用之一 赫夫曼编码广泛地用于数据文件压缩。其压缩率通常在 20%~90%之间 赫夫曼码是可变字长编码(VLC)的一种。 阅读全文
posted @ 2021-07-27 10:56 whn051799 阅读(169) 评论(0) 推荐(0) 编辑
摘要: ###1.基本介绍 给定 n 个权值作为 n 个叶子结点,构造一棵二叉树, 若该树的带权路径长度(wpl) 达到最小,称这样的二叉树为最优二叉树,也称为哈夫曼树(Huffman Tree), 还有的书翻译为霍夫曼树。 赫夫曼树是带权路径长度最短的树,权值较大的结点离根较近。 ###2.赫夫曼树几个重 阅读全文
posted @ 2021-07-14 15:07 whn051799 阅读(137) 评论(0) 推荐(0) 编辑
摘要: ###1.堆排序基本介绍 堆排序是利用堆这种数据结构而设计的一种排序算法,堆排序是一种选择排序,它的最坏,最好,平均时间复杂度均为 O(nlogn),它也是不稳定排序。 堆是具有以下性质的完全二叉树:每个结点的值都大于或等于其左右孩子结点的值,称为大顶堆, 注意 : 没有要求结点的左孩子的值和右孩子 阅读全文
posted @ 2021-07-14 14:57 whn051799 阅读(83) 评论(0) 推荐(0) 编辑
摘要: ###1.先看一个问题 将数列 {1, 3, 6, 8, 10, 14 } 构建成一颗二叉树. n+1=7 问题分析: 当我们对上面的二叉树进行中序遍历时,数列为 {8, 3, 10, 1, 6, 14 } 但是 6, 8, 10, 14 这几个节点的 左右指针,并没有完全的利用上. 如果我们希望充 阅读全文
posted @ 2021-07-14 11:50 whn051799 阅读(66) 评论(0) 推荐(0) 编辑
摘要: ###1. 顺序存储二叉树的概念 基本说明 从数据存储来看,数组存储方式和树的存储方式可以相互转换,即 数组可以转换成树, 树也可以转换成数组,看右面的示意图。 要求: 右图的二叉树的结点,要求以数组的方式来存放 arr : [1, 2, 3, 4, 5, 6, 6] 要求在遍历数组 arr 时,仍 阅读全文
posted @ 2021-07-14 11:35 whn051799 阅读(285) 评论(0) 推荐(0) 编辑
上一页 1 2 3 4 5 6 7 8 ··· 19 下一页