
C++高阶数据结构
文章平均质量分 93
图,B树等较难的数据结构
冰果滴
Goal
展开
-
Skiplist(跳表)实现
跳表本质是一种查找结构,相较于AVL树、红黑树、哈希表,实现起来要更加简单,而且效率也不差。原创 2023-02-05 16:09:19 · 1296 阅读 · 0 评论 -
理解B树及B+树、B*树
B树:有序数组+平衡多叉树;B+树:有序数组链表+平衡多叉树;B*树:一棵更丰满的,空间利用率更高的B+树。在实际使用中,B+的使用是最多的。MySQL是目前非常流行的开源关系型数据库,不仅是免费的,可靠性高,速度也比较快,而且拥有灵活的插件式存储引擎MySQL中索引属于存储引擎级别的概念,不同存储引擎对索引的实现方式是不同的。原创 2023-02-22 22:11:16 · 1291 阅读 · 0 评论 -
LRU Cache(最近最少使用)实现
LRU是Least Recently Used的缩写,意思是最近最少使用,它是一种Cache替换算法。什么是Cache呢?狭义的Cache指的是位于CPU和主存间的快速RAM, 通常它不像系统主存那样使用DRAM技术,而使用昂贵但较快速的SRAM技术。广义上的Cache指的是位于速度相差较大的两种硬件之间, 用于协调两者数据传输速度差异的结构。原创 2023-01-26 13:10:05 · 1679 阅读 · 0 评论 -
通过C++对【图】进行抽丝剥茧(包括广度、深度优先遍历,求最小生成树,求最短路径)
图是一个非常抽象的数据结构,之前学过的二叉树也属于图。想要理解图,就要一步一步的去分析理解。原创 2023-01-20 17:56:24 · 2006 阅读 · 0 评论 -
理解使用并查集
理解并查集是为了接下来学习图要用,而会使用并查集,则可以在做某些OJ题目时更加简单。原创 2023-01-18 16:04:33 · 1284 阅读 · 0 评论 -
深入理解 红黑树【满足红黑树5条规则】
在学习红黑树之前,我们最好先学习一下AVLTree,并且这两个平衡二叉搜索树的难度差不多,学过了AVLTree之后,红黑树就会更加轻松一些。红黑树只是比较抽象一些,在调整方面较AVLTree要简单一些。......原创 2022-08-07 09:43:43 · 1170 阅读 · 0 评论 -
深入理解AVLTree【旋转控制平衡(单旋、双旋)】
二叉树是数据结构的重要一部分,而作为平衡二叉搜索树的AVLTree和红黑树学习起来是比较难的,但是我们需要去了解它们的思路(在学习的过程中,我们最好通过画图去更深入的理解,然后根据自己的图来完成代码实现)在学习AVLTree之前建议先去学习一下set和map(了解KV模型,键值对等)......原创 2022-08-05 11:40:02 · 1256 阅读 · 0 评论 -
C++ 二叉搜索树BinarySearchTree
二叉搜索树是为学习map和set做的铺垫,了解了二叉搜索树的特性,有助于更好的理解map和set。原创 2022-07-30 09:00:00 · 1152 阅读 · 0 评论