码迷,mamicode.com
首页 > 其他好文 > 详细

第四章节 树(2)

时间:2015-05-12 22:42:47      阅读:130      评论:0      收藏:0      [点我收藏+]

标签:

目录

一、预备知识

二、二叉树

三、查找树ADT-----二叉查找树

四、AVL树

五、伸展树

六、树的遍历

七、B树

八、标准库中的集合与映射

 

五、伸展树

六、树的遍历

中序遍历:二叉查找树可以很方便的按顺序输出项。这种用于树的时候是中序遍历。

后序遍历:有时我们要先处理两个叶子节点再处理当前节点。如为了计算一个节点的高度,我们要先知道两个儿子的高度。

先序遍历:当前节点在儿子处理前处理。如想标记每一个节点的深度。

所有的有一个共同点:先处理null情况 ,再处理其它的。

七、B树

基于这样的现实:对磁盘的访问开销很大。所以要尽可能减少磁盘的访问。

由于典型的AVL树接近最优的高度,所以应该清楚,二叉树是不能使访问次数少于logN的。我们考虑M叉树。

原则上B树保证只有少数的磁盘访问。阶为M的B树有下面的性质:

1.数据项存储在树叶上。

2.非叶子节点 存储直到M-1个关键字以指示搜索方向。

3.树的根或者是一个树叶,或者其儿子数在2 - M之前 。

4.除根外,所有 非树叶节点 数在M/2 - M之前 。

5.所有的树叶都在相同 的深度并有L/2 - L之间个数据项.

八、标准库中的集合与映射

第三章节中的List容器,如ArrayList/ LinkedList用于查找时的效率很低,因此Collection API提供了两个附加的容器 Set /Map ,它们对插入,

删除,查找等基本操作效率比较高。

关于Set接口

关于Map接口

 

第四章节 树(2)

标签:

原文地址:http://www.cnblogs.com/chuiyuan/p/4498640.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!