STL容器分为两种:
1.序列式容器 (vector/list/deque/stack/queue/heap)
2.关联容器 set(集合), map(映射表) 两大类,set/map/multiset/multimap都内含一个RB-tree
hash_set/hash_map/hash_multiset/hash_multimap都内含一个hashtable
所谓关联容器,类似关联数据库,每个元素都有一个键值(key)和一个实值(value),即所谓Key-Value对
红黑树 --- 有时间要好好了解一下
黑头黑脑,坑爹,红不过三代
密钥一. 分而治之/hash映射 + Hash统计 + 堆/快速/归并排序
1. 使用hash函数,将记录划分到1024个小文件中
2.使用 hash_map或者trie树,统计出每个文件中,出现次数最多N次的字串符及相应的出现频率(堆
排序)存入一个文件,再将这些堆排序好的1024个组数据归并排序。
Trie树也称字典树,对于每一个节点,从根遍历到他的过程就是一个单词,如果这个节点被标记为红色
,就表示这个单词存在,否则不存在。
Trie树是一个DFA有限自动机,
通常是处理字符串,但是也很可以处理其他结构的有序序列,比如一串数字或者形状的排列。
trie树常用于搜索提示。如当输入一个网址,可以自动搜索出可能的选择。当没有完全匹配的搜索结果,可以返回前缀最相似的可能。
TRIE树: http://blog.csdn.net/yexianyi/article/details/4092954
wiki: http://zh.wikipedia.org/wiki/Trie
hashtable优于rbtree