
C++ 算法系列
文章平均质量分 93
以 邓俊辉 老师的第三版教材为主,进行自我学习,记录知识的过程!
-木云-
抛下自命不凡的想法,去读万卷书,行千里路...
展开
-
优先级队列
什么是优先级队列呢?我们得首先清楚优先级的概念。有这样一个例子,在一家医院里面,一开始的时候看病是按照先到先看的顺序,也就是我们前面学到的队列。然后有一天一个身受重伤的病人来了,护士告诉他说你去排队吧,然后还没有等到他排到就不幸去世了。这件事情让医院明白了一个道理,那就是针对不同情况的病人,需要给他们一个不同的级别,例如受重伤的人就应该最先被治疗,而仅仅是轻微感冒这类似的问题则可以稍微延后一点......原创 2022-05-05 17:40:33 · 3217 阅读 · 0 评论 -
词典之散列
逻辑上的词典,是由一组数据构成的集合,其中各元素都是由关键码和数据项合成的词条(entry)。映射(map)结构与词典结构一样,也是词条的集合。二者的差别仅仅在于,映射要求不同词条的关键码互异,而词典则允许多个词条拥有相同的关键码。原创 2022-04-26 16:56:39 · 1540 阅读 · 0 评论 -
高级搜索树之伸展树
伸展树(Splay Tree)是平衡二叉搜索树的一种形式。相对于 AVL,伸展树的实现更为简捷。伸展树无需时刻都严格地保持全树的平衡,但却能够在任何足够长的真实操作序列中,保持分摊意义上的高效率。伸展树也不需要对基本的二叉树节点结构,做任何附加的要求或改动,更不需要记录平衡因子或高度之类的额外信息,故适用范围更广。原创 2022-04-14 17:26:31 · 3011 阅读 · 0 评论 -
高级搜索树之红黑树
对于大部分人来讲,红黑树绝对是一个“高级”的代名词,很多人不了解红黑树,也不知道它能做什么。实际上,完全不需要这样想,红黑树并没有大家想象的那么深奥。当然,学习红黑树并不是没有前提条件的,首先你需要了解 AVL 树,其次还需要对 B 树有一定程度的认识,在这个基础之上,相信你一定能掌握好红黑树!原创 2022-04-14 17:47:00 · 2304 阅读 · 0 评论 -
高级搜索树之B树
微软创始人比尔盖茨在 1981 年提出了一个观点:640K ought to be enough for anybody 。他想说明的是,在计算机世界中,实际上只需要 640K 的内容容量就足够存放一切信息了。也许现在你会觉得这是不具有长远眼光的一句话,但是当你完成 B 树的学习之后,你可能会认为这句话是正确的!原创 2022-04-14 17:38:46 · 2744 阅读 · 0 评论