
数据结构与算法
u010154380
这个作者很懒,什么都没留下…
展开
-
最小堆与最大堆
最小/大堆的操作及堆排序摘自:《啊哈算法》我们要用1, 2, 5, 12, 7, 17, 25, 19, 36, 99, 22, 28, 46, 92来建立最小堆,并且删除最小的数,并增加一个数23如何建立这个堆://建堆 n = 0; for (int i = 1; i <= m; i++) { n++; h[n] = a[n]; shiftup(n); }我们还有...转载 2018-02-22 22:35:41 · 329 阅读 · 0 评论 -
史上最清晰的红黑树讲解(上)
史上最清晰的红黑树讲解(上)本文github地址本文以Java TreeMap为例,从源代码层面,结合详细的图解,剥茧抽丝地讲解红黑树(Red-Black tree)的插入,删除以及由此产生的调整过程。总体介绍Java TreeMap实现了SortedMap接口,也就是说会按照key的大小顺序对Map中的元素进行排序,key大小的评判可以通过其本身的自然顺序(natural ordering),也...转载 2018-03-15 23:16:20 · 154 阅读 · 0 评论 -
史上最清晰的红黑树讲解(下)
史上最清晰的红黑树讲解(下)本文github地址上一篇文章史上最清晰的红黑树讲解(上)对Java TreeMap的插入以及插入之后的调整过程给出了详述。本文接着以Java TreeMap为例,从源码层面讲解红黑树的删除,以及删除之后的调整过程。如果还没有看过上一篇文章,请在阅读本文之前大致浏览一下前文,以方便理解。寻找节点后继对于一棵二叉查找树,给定节点t,其后继(树种比大于t的最小的那个元素)可...转载 2018-03-15 23:18:49 · 199 阅读 · 0 评论 -
应对程序员面试,你必须知道的八大数据结构
应对程序员面试,你必须知道的八大数据结构 大数据文摘 18-08-1912:33 大数据文摘出品 编译:Hope、睡不着的iris、胡笳、云舟 瑞士计算机科学家Niklaus Wirth在1976年写了一本书,名为《算法+数据结构=编程》。 40多年后,这个等式仍被奉为真理。这就是为什么在面试过程中,需要考察软件工程师对数据结构的理解。 几乎所有的问题...转载 2019-06-13 16:19:28 · 208 阅读 · 0 评论