为什么选择跳表目前经常使用的平衡数据结构有:B树,红黑树,AVL树,Splay Tree, Treep等。想象一下,给你一张草稿纸,一只笔,一个编辑器,你能立即实现一颗红黑树,或者AVL树出来吗? 很难吧,这需要时间,要考虑很多细节,要参考一堆算法与数据结构之类的树,还要参考网上的代码,相当麻烦。用...
分类:
其他好文 时间:
2015-03-17 00:34:27
阅读次数:
128
自10月初编写算法系列的博客以来,陆陆续续以来写了几十篇。按照计划,还有三个部分的内容没有介绍,主要是(Dijkstra算法、二叉平衡树、红黑树)。这部分会在后面的博客补充完整。这里主要是做一个总结,有兴趣的朋友可以好好看看,欢迎大家提出宝贵意见。 (1) 排序算法 快速排序 合并排序堆排序选...
分类:
编程语言 时间:
2015-03-15 18:07:09
阅读次数:
184
目录:TreeSet 和 TreeMap 的关系TreeMap 的添加节点TreeMap 的删除节点红黑树添加节点后的修复删除节点后的修复检索节点TreeMap 和 TreeSet 是 Java Collection Framework 的两个重要成员,其中 TreeMap 是 Map 接口的常用实...
分类:
编程语言 时间:
2015-03-15 12:17:26
阅读次数:
218
声明:尊重原创,转载请注明出处http://blog.csdn.net/lizo_is_me/article/details/442600251 平衡二叉树平衡二叉树(Balanced binary tree)是由阿德尔森-维尔斯和兰迪斯(Adelson-Velskii and Landis)于1962年首先提出的,所以又称为AVL树。定义:平衡二叉树或为空树,或为如下性质的二叉排序树:(1)左右子...
分类:
其他好文 时间:
2015-03-14 21:49:37
阅读次数:
616
上千万或上亿的数据,现在的机器的内存应该能存下。所以考虑采用hash_map/搜索二叉树/红黑树等来进行统计次数。然后就是取出前N个出现次数最多的数据了,可以用第2题提到的堆机制完成。
#include "IOSTREAM"
#include
#include
#include
using namespace std;
int main(void)
{
//海量待统计数据
char...
分类:
编程语言 时间:
2015-03-14 08:29:20
阅读次数:
412
红黑树是每个节点都带有颜色属性的二叉查找树,颜色为红色或黑色。在二叉查找树强制一般要求以外,对于任何有效的红黑树我们增加了如下的额外要求:性质1. 节点是红色或黑色。性质2. 根是黑色。性质3. 所有叶子都是黑色(叶子是NIL节点)。性质4. 每个红色节点必须有两个黑色的子节点。(从每个叶子到根的所...
分类:
其他好文 时间:
2015-03-11 23:15:08
阅读次数:
130
BST: 每个节点的键,都大于其左自述中的任意节点的键,而小于有字数的任意结点的键。 部分实现 get(Node x , Key key){ if(x == null) return null; cmp = key.compareTo(x.key); if(cmp0) retrun ...
分类:
其他好文 时间:
2015-03-09 20:42:44
阅读次数:
172
1.红黑树的性质。 1)根节点是黑色。 2)所有节点要么是红色,要么是黑色。 3)红节点的孩子必然是黑色。 4)都用叶子节点结尾,且叶子节点是哨兵,都是黑色,没有实际的key值。 5)每一个节点的所有黑高都是相等的,黑高即是从此节点开始,到每一个哨兵所经历的黑节点的个数。2.红黑树的插入。 1)插入...
分类:
其他好文 时间:
2015-03-09 15:50:15
阅读次数:
130
关联容器包含map、set、multimap、multiset。关联容器的特点是明显的,相对于顺序容器,有如下特点:1、其内部是采用非线性的二叉树结构,具体的说是红黑树的结构原理实现的。2、set和map保证了元素的唯一性,multiset和multimap扩展了这一属性,可以允许元素不唯一。3、元...
分类:
其他好文 时间:
2015-03-05 18:53:59
阅读次数:
135
这一章节特别有意思。习题也比较多,但是很容易掌握。主要描述的就是在已知数据结构的基础上,通过增加或修改部分基础操作。来构造更加有效的新数据结构。14.1动态数据统计本节主要介绍如何修改红黑树,使得可以在O(lgn)时间内确定顺序统计量,如何在O(lgn)时间内确定一个元素的秩,即它在集合线性序中的位...
分类:
编程语言 时间:
2015-03-03 18:13:51
阅读次数:
137