一.二叉树 1.满二叉树 高度为h,由2的h次-1个节点构成的二叉树称为满二叉树 2.完全二叉树 高度为h,除第h层外,其它各层节点数都到达最大节点数。且第h层的节点都连续集中在最左边 二.二叉查找树 又称二叉排序树或二叉搜索树。左子树的所有节点值均小于根节点的值,右子树所有节点值均大于根节点的值。 ...
分类:
其他好文 时间:
2020-07-04 20:29:37
阅读次数:
48
#前置芝士 熟练掌握二叉排序树的操作,了解 \(Treap\) 的左旋和右旋。 #引言 \(Treap\) 巧妙地使用随机数,解决了二叉查找树保持平衡的问题。但随机数的不稳定,导致它在极小概率的情况下不能保持树的平衡。故我们需要一种更加稳定的数据结构(虽然它不是很好写)。 #正文 \(Splay\) ...
分类:
其他好文 时间:
2020-07-04 16:51:48
阅读次数:
58
108. 将有序数组转换为二叉搜索树 思路 二叉搜索树的概念: 二叉查找树(Binary Search Tree),(又:二叉搜索树,二叉排序树)它或者是一棵空树,或者是具有下列性质的二叉树: 若它的左子树不空,则左子树上所有结点的值均小于它的根结点的值; 若它的右子树不空,则右子树上所有结点的值均 ...
分类:
编程语言 时间:
2020-07-03 23:39:43
阅读次数:
71
写在前面:今天来学习一下MySQL中的索引机制。 一、何为索引? 说到索引,第一反应就是它能够加快数据查询的效率,可它到底是个什么东西呢? 数据库的索引是一种为了加速数据表中行记录检索的数据结构 索引的本质是 数据结构 我们来看一下索引的工作机制 可以看到,我对ID创建了一个索引,形成了数据结构,当 ...
分类:
数据库 时间:
2020-07-03 00:38:07
阅读次数:
78
一.查找 1.顺序查找:简单粗暴,将待查找数据和表中数据一一对比。 2.二分查找:也称折半查找,要求顺序表或者数组必须有序,查找效率相对较高。 3.分块查找:要求块与块之间有序,块内部不需要有序。查找效率高,但对表要求较高。 二.树的查找 1.二叉查找树:它或者是一棵空树,或者是具有下列性质的二叉树 ...
分类:
其他好文 时间:
2020-06-28 22:36:37
阅读次数:
64
学习时间 新增代码行 博客发表量 知识总结 第八周 4h 80 1 认识栈 利用栈判断回文 第九周 2h 40 1 认识树 学会建树 先序输出 第十周 2h 40 1 复习树的知识 查找树的元素 第十一周 3h 70 1 认识图 学会建图 有无赋权 无向图有向图 第十二周 1h 30 1 复习图的知 ...
分类:
其他好文 时间:
2020-06-28 13:20:06
阅读次数:
71
二叉排序树(BST) 二叉排序树,又称二叉查找树(BST) 左子树结点值<根节点值<右子树结点值 如果用中序遍历来遍历一棵二叉排序树的话,可以得到一个递增的有序数列 左根右 二叉排序树的查找 //二叉排序树结点 typedef struct BSTNode{ int key; struct BSTN ...
分类:
编程语言 时间:
2020-06-28 13:17:50
阅读次数:
111
背景 如果前人认为这个一种学习提高或者检验能力的成功实践。而自己目前又没有更好的方法,那就不妨试一试。 而不管作为面试官还是被面试者,编码题最近越来越流行。而两种角色都需要思考的问题是希望考察什么能力,通过什么题目,需要达到怎样的程度可以说明面试者具有了这样的能力。 而要找到上面这些问题的答案,比较 ...
分类:
其他好文 时间:
2020-06-28 09:45:51
阅读次数:
67
查找分为线性表的查找、树表的查找、散列表的查找。 一些定义: 查找表:由同一类型的数据元素(或记录)构成的集合(在查找时对表做修改操作,如插入和删除,则称为动态查找表;否则称为静态查找表) 关键字:数据元素(或记录)中某个数据项的值(如果一个查找表里只存储了关键字,意义不是很大 平均查找长度ASL: ...
分类:
其他好文 时间:
2020-06-27 00:10:28
阅读次数:
89
二叉树概念 二叉树:每个节点最多有两个子节点 满二叉树:深度为K,有2^k-1个节点 完全二叉树:满二叉树属于完全二叉树,最后一层可满可不满,不满只可右部分缺失,其余层是满的 平衡二叉树:一棵空树或者左右子树的高度差的绝对值不能超过1 二分查找树:左子树节点的值比该节点的值小,右子树节点的值比该节点 ...
分类:
其他好文 时间:
2020-06-24 11:56:36
阅读次数:
58