数据结构
文章平均质量分 51
数据结构学习
爱欧米
这个作者很懒,什么都没留下…
展开
-
2.算法与数据结构
排序算法平均时间最差时间稳定度额外空间备注冒泡排序O(n²)O(n²)稳定O(1)n小较好插入排序O(n²)O(n²)稳定O(1)n小较好选择排序O(n²)O(n²)不稳定O(1)n小较好交换排序O(n²)O(n²)不稳定O(1)大部分数据已经排序好快速排序O(nlogn)O(n²)不稳定O(nlogn)n大时较好基数排序O(nlogrn)O(nlogrn)稳定O(n)n是真数,r是基数桶排序O(nlogn)原创 2023-05-30 14:46:58 · 697 阅读 · 0 评论 -
0.数据结构总结对比【更新中】
数据结构基本类型 具体数据结构 优点 缺点 查找时间复杂度 增改时间复杂度 空间复杂度 常见实践产品 数组类 链表类 Hash类 树类 二叉树 红黑树 ...原创 2020-11-19 10:26:14 · 200 阅读 · 0 评论 -
1.数据结构-二叉树
二叉树是什么 二叉排序树(Binary Sort Tree),又称二叉查找树(Binary Search Tree),亦称二叉搜索树.是数据结构中的一类.在一般情况下, 查询效率大于等于链表,插入效率低于链表. 二叉树查询修改时间复杂度【O(logn)-O(n)】,链表查询时间复杂度【O(n)】,链表修改时间复杂度【O(n)】,链表插入时间复杂度【O(1)】.1.满二叉树形态图2.偏二叉树形态图二叉树定义 一个节点有或无左右叶子节点的数据结构,二叉树不好定义...原创 2020-11-19 10:46:02 · 273 阅读 · 0 评论 -
2.数据结构-红黑树
上篇文章我们研究了二叉树,发现二叉树在不平衡状态下,其时间复杂度不够优秀,有没有一种比较稳定高效的二叉树,他就是红黑树。红黑树是什么红黑树(Red Black Tree) 是一种自平衡二叉查找树,是在计算机科学中用到的一种数据结构,红黑树是在1972年由Rudolf Bayer发明的,当时被称为平衡二叉B树(symmetric binary B-trees)。后来,在1978年被 Leo J. Guibas 和 Robert Sedgewick 修改为如今的“红黑树”。红黑树是一种特化的AVL树(平原创 2020-11-18 16:29:52 · 205 阅读 · 0 评论 -
3.数据结构-B-tree
B-tree是什么 B树(英语:B-tree)是一种自平衡的树,能够保持数据有序。这种数据结构能够让查找数据、顺序访问、插入数据及删除的动作,都在对数时间内完成。B树,概括来说是一个一般化的二叉查找树(binary search tree)一个节点可以拥有2个以上的子节点。与自平衡二叉查找树不同,B树适用于读写相对大的数据块的存储系统,例如磁盘。B树减少定位记录时所经历的中间过程,从而加快存取速度。B树这种数据结构可以用来描述外部存储。这种数据结构常被应用在数据库和文件系统的实现上。 ...原创 2020-11-18 16:30:55 · 484 阅读 · 0 评论 -
4.数据结构-B+tree与MySql
上篇我们研究了B树的特点,或多或少的介绍了B树与mysql的关系,在mysql实际的数据结构使用的并不是B树而是B+tree。下面我们就侧重介绍什么是B+tree,他和B-tree有什么相似点和不同的地方,以及B+tree和mysql的关系。介绍B+tree先介绍下mysql数据存储结构:mysql数据结构类型 数据结构优势 数据结构劣势 时间复杂度 适用场景 支持的数据类型 B+tree 磁盘友好,性能好 数据结构复杂 O(n)=O(logmN)原创 2020-11-19 17:17:19 · 373 阅读 · 0 评论 -
5.数据结构-Rtree
待更新原创 2020-11-23 15:38:02 · 183 阅读 · 0 评论 -
6.数据结构-Trie
Trie树是什么又称单词查找树,Trie树,字典树,是一种树形结构,是一种哈希树的变种。典型应用是用于统计,排序和保存大量的字符串(但不仅限于字符串),所以经常被搜索引擎系统用于文本词频统计。它的优点是:利用字符串的公共前缀来减少查询时间,最大限度地减少无谓的字符串比较,在树平衡的前提下查询效率比哈希树高,但是如果树极端不平衡可能树的形态就是一条链时间复杂度为O(n).1.trie结构图trie树Trie树特点 1.根节点不包含字符,除根节点外每一个节点都只包含一个字符 ...原创 2020-11-18 16:35:26 · 124 阅读 · 0 评论 -
7.数据结构-堆树
待更新原创 2020-11-23 15:41:35 · 91 阅读 · 0 评论 -
8、LSM树
最近在调研NoSQL数据库,发现RocksDB、LevelDB、HBase以及Prometheus等,其底层的存储引擎都是基于LSM树,于是决定花时间彻底吃透LSM树这一数据结构。不幸的是,在查阅资料学习的过程中,发现网上各种文章汗牛充栋、抄来抄去,不是文不对题就是不知所云。一气之下决定自己写一篇出来消消气,便有了这篇文章。。。PS:学了这么多数据结构,LSMTree应该是最年轻的一个,它在1996年被设计出来(属老鼠的),年纪比我还小~原创 2023-03-10 00:19:20 · 452 阅读 · 0 评论 -
xxx.树度数与B-tree阶数区别
度数:在树中 每个节点的子节点(子树)的个数就称为该节点的度(degree)阶数:B-tree阶定义为一个节点的子节点数目的最大值。(自带最大值属性)原创 2020-11-20 14:26:22 · 838 阅读 · 2 评论 -
6.数据结构-单链表
待更新原创 2020-11-18 16:37:36 · 101 阅读 · 0 评论 -
5.数据结构-双链表
待更新原创 2020-11-18 16:38:30 · 70 阅读 · 0 评论