数据结构
文章平均质量分 92
fengkeyleaf
经常二次元,偶尔敲代码
展开
-
双向链接的红黑树(二):直接删除
对于deleteMax()和deleteMin(),双向链接的逻辑和代码和原版是非常相似的,只需要在原版的基础上修复双向指向关系,和删除双向链表的头或尾节点即可,非常的简单。所以这一节我们把重点放在delete()上面,和之前分析put()的方法一样,我们也来看看原版delete()有哪些主要的步骤:原创 2022-03-17 14:52:12 · 289 阅读 · 0 评论 -
双向链接的红黑树(一):基础概念和插入
首先我们还是先来看看双向链接红黑树的概念,其实和双向链接BST相似,我们只是在此前的基础上引入红黑节点,其他的概念保持不变。下图展示了一个完整的双向链接红黑树:基本和之前的双向链接BST相似,所以这里不再详细介绍双向链接红黑树的概念。同样,经过这样处理的红黑树将不是一颗树,严格意义上来说,它是个连接图(Connected Graph)。原创 2022-03-16 13:53:52 · 883 阅读 · 0 评论 -
双向链接的二叉查找树(二):直接插入和删除
双向链接的二叉查找树(二):直接插入和删除1. 插入2. 删除3. 免责声明1. 插入首先实现双向的方法非常简单,我们只需在原来BST的基础上,每次插入或删除之后,修复一下子节点指向的父结点即可。另外因为BST在实际应用中因为效率问题,一般都是使用BBST,所以这里我没有实现BST的直接插入或删除,而是使用之前的插入或删除操作形成双向链接的BST,但BST的直接插入和删除方法基本和我下面讲解的非常相似,如果大家在自己实现的时候有问题可以留言哦~我们以插入(put)为例,原来的put()代码为:pri原创 2022-03-15 20:30:58 · 825 阅读 · 0 评论 -
双向链接的二叉查找树(一):基本概念
双向链接的二叉查找树(一):基本概念1. 背景介绍2. 基本概念2.1 为什们需要双向链接?2.2 结构和定义3. 直接前后继4. 免责声明1. 背景介绍从这章开始,我们将会深入讲解一下Voronoi图(Voronoi Diagrams)相关的内容,但是在进入到Voronoi图讲解之前,我们需要先来讲解一下特殊的数据结构——双向链接的红黑树(Doubly-linked red black tree),它的实现和理解对于我们高效实现Voronoi图算法至关重要,所以整个系列文章的结构如下:双向链接的二原创 2022-03-15 11:19:18 · 585 阅读 · 0 评论 -
速来收藏 | 数据结构和算法文章汇总(含代码)
速来收藏!数据结构和算法文章汇总(含代码)原创 2021-08-22 11:00:06 · 148 阅读 · 0 评论 -
超详细 | 线段树讲解文章汇总(含代码)
超详细!线段树讲解文章汇总(含代码)原创 2021-08-22 10:26:03 · 165 阅读 · 0 评论 -
线段树(四):代码解析·续
线段树(四):代码解析·续原创 2021-08-22 10:23:26 · 107 阅读 · 0 评论 -
线段树(三):代码解析
线段树(三):代码解析原创 2021-08-22 10:11:17 · 127 阅读 · 0 评论 -
线段树(二):RMQ
线段树(二):RMQ原创 2021-08-21 23:50:01 · 511 阅读 · 0 评论 -
线段树(一):基本概念
线段树(一):基本概念原创 2021-08-21 23:03:54 · 155 阅读 · 0 评论 -
计算几何课堂:DCEL(双向边链表)
计算几何课堂:DCEL(双向边链表)原创 2021-07-30 15:17:56 · 1801 阅读 · 6 评论 -
超详细 | 红黑树详解文章汇总(含代码)
包含所有红黑树的讲解文章链接原创 2021-06-01 16:35:05 · 349 阅读 · 0 评论 -
终章:二叉查找树和红黑树的性能比较
BST和红黑树的性能比较原创 2021-06-01 16:27:00 · 651 阅读 · 0 评论 -
红黑树(七):删除和性能分析
红黑树(七):删除原创 2021-06-01 14:50:09 · 266 阅读 · 0 评论 -
红黑树(六):删除最大键
红黑树(六):删除最大键原创 2021-06-01 13:17:27 · 245 阅读 · 0 评论 -
红黑树(五):删除最小键
红黑树(五):删除最小键原创 2021-06-01 10:29:23 · 476 阅读 · 1 评论 -
红黑树(四):插入实现
红黑树(四):插入实现原创 2021-05-31 20:11:01 · 112 阅读 · 0 评论 -
红黑树(三):插入·续
红黑树(三):插入·续原创 2021-05-31 16:55:46 · 103 阅读 · 0 评论 -
红黑树(二):旋转和插入
红黑树(二):旋转和插入原创 2021-05-31 16:01:36 · 342 阅读 · 0 评论 -
红黑树(一):基本概念和数据结构
红黑树(一):基本概念和数据结构原创 2021-05-31 14:33:32 · 207 阅读 · 0 评论 -
2-3查找树(三):全局性质和轨迹图例
2-3树(三):全局性质和轨迹图例原创 2021-05-31 11:24:33 · 247 阅读 · 0 评论 -
2-3查找树(二):插入
2-3树(二):插入原创 2021-05-31 11:05:23 · 694 阅读 · 3 评论 -
2-3查找树(一):基本概念
2-3树(一):基本概念原创 2021-05-31 00:12:30 · 577 阅读 · 0 评论 -
二叉查找树(四):删除和性能分析
二叉查找树(四):删除和性能分析原创 2021-05-30 21:15:51 · 242 阅读 · 0 评论 -
二叉查找树(三):插入和分析
二叉查找树(三):插入和分析原创 2021-05-30 16:47:36 · 373 阅读 · 0 评论 -
二叉查找树(二):数据结构、大小和查找
二叉查找树(二):查找和插入原创 2021-05-30 15:01:14 · 345 阅读 · 0 评论 -
二叉查找树(一):基本概念和特性
涉及二叉查找树的基本概念,查找,插入等相关算法讲解原创 2021-05-30 10:38:41 · 292 阅读 · 0 评论 -
二叉树三种遍历实现串讲(前中后序遍历 & C++)
二叉树三种遍历实现串讲(前中后序遍历 & C++)原创 2020-08-12 16:02:52 · 564 阅读 · 0 评论