![](https://img-blog.csdnimg.cn/20190911150635218.jpeg?x-oss-process=image/resize,m_fixed,h_224,w_224)
数据结构与算法
文章平均质量分 74
数据结构与算法......
@龙猫
写代码是每天最重要的小事
展开
-
十大经典排序算法
术语说明:稳定 :如果a原本在b前面,而a=b,排序之后a仍然在b的前面;不稳定 :如果a原本在b的前面,而a=b,排序之后a可能会出现在b的后面;内排序 :所有排序操作都在内存中完成;外排序 :由于数据太大,因此把数据放在磁盘中,而排序通过磁盘和内存的数据传输才能进行;时间复杂度 : 一个算法执行所耗费的时间。空间复杂度 :运行完一个程序所需内存的大小。冒泡排序package org.apache.ibatis.mytest;import java.util.Arrays;/**原创 2021-10-31 21:22:43 · 379 阅读 · 0 评论 -
B+树的理解以及在mysql中的应用
AVL 树和红黑树这些二叉树结构的数据结构可以达到最高的查询效率这是毋庸置疑的。既然如此,那么数据库索引为什么不用 AVL 树或者红黑树呢?这就牵扯到一个问题了,不考虑每种数据结构的前提条件而选择数据结构都是在耍流氓。AVL 数和红黑树基本都是存储在内存中才会使用的数据结构,那磁盘中会有什么不同呢?这就要牵扯到索引的存储原理了页是 InnoDB存储引擎管理数据库的最小磁盘单位。一个页中包括很多数据行。那么,现在问题就来了一个父节点只有 2 个子节点,并不能填满一个页上的所有内容啊?那多余的内原创 2021-10-31 14:58:05 · 296 阅读 · 0 评论 -
树论基础-二叉树
在树形结构里面有几个重要的术语:1.结点:树里面的元素。2.父子关系:结点之间相连的边3.子树:当结点大于1时,其余的结点分为的互不相交的集合称为子树4.度:一个结点拥有的子树数量称为结点的度5.叶子:度为0的结点6.孩子:结点的子树的根称为孩子结点7.双亲:和孩子结点对应8.兄弟:同一个双亲结点9.森林:由N个互不相交的树构成森林在树形结构里面有几个重要的术语:结点的高度:结点到叶子结点的最长路径结点的深度:根结点到该结点的边个数结点的层数:结点的深度加1树的高度:根结点的高.原创 2021-10-31 13:43:58 · 374 阅读 · 0 评论 -
二叉搜索树BST&红黑树
private void fixAfterInsertion(Entry<K,V> x) { // 新添加的节点是红色 x.color = RED; // 添加的节点 while (x != null && x != root && x.parent.color == RED) { // 当前节点非空且不是根节点且当前节点的父节点是红色 if (parentOf(x) == leftOf(parentOf(parentOf(x)))) { // 当前原创 2021-10-29 18:21:25 · 223 阅读 · 0 评论