对于大量的输入数据,链表的线性访问时间太慢,一般使用树这种数据结构。接下来的博客都将围绕如何利用树支持以O(logN)平均时间进行的各种搜索操作,以及如何细化优化得到最坏情况时间界O(logN)。
从逻辑结构上说,我之前写到的都是一对一的线性结构,也就是说一个节点一定有一个直接前驱一个直接后继。但是在现实中,还有很多的一对多的情况需要处理,所以现在就需要一种一对多的数据结构--树。
这篇博客分下面的目录来全面的学习树的知识,其中的部分可能不足,但是我会随时的更新。
(I)树的概述
在这篇博客中我会回顾一下树的实现(表示方法)、树的性质、存储结构等一般树的知识点。
链接这这里:树的概述
(II)二叉树
(III)二叉查找树
(IV)AVL树
(V)伸展树
(VI)树的遍历
(VII)B-树
(VIII)树的应用