第七章学习小结

一、线性表的查找

1、  顺序查找:<适合对象——无序或有序队列>

(1)思想:逐个比较,直到找到或者查找失败。

(2)时间复杂度:T(n) = O(n)。

(3)空间复杂度:S(n) = O(n)。

(4)缺点:当n较大时,平均查找长度较大,效率低。

2、  折半查找:<适合对象——只是适用于有序表,且限于顺序存储结构>

(1)思想:又称二分查找,对于已经按照一定顺序排列好的列表,每次都用关键字和

中间的元素对比,然后判断是在前部分还是后部分还是就是中间的元素,然后继续

用关键字和中间的元素对比。

(2)时间复杂度:T(n) =O(logn)。具有n 个结点的完全二叉树的深度为,在这里尽管

折半查找判定二叉树并不是完全二叉树,但同样相同的推导可以得出,最坏情况是

查找到关键字或查找失败的次数也如此。其时间复杂度远好于顺序查找的时间复杂

度O(n)了。

二、树的查找:

1、  二叉排序树:

(1)思想:二叉排序树:①若它的左子树非空,则左子树上所有节点的值均小于它的

根节点的值;②若它的右子树非空,则右子树上所有结点的值均大于(或大于等于)

它的根节点的值;③它的左、右子树也分别为二叉排序树。查找的时候,中序遍历

二叉树,得到一个递增有序序列。查找思路类似于折半查找。

(2)时间复杂度:插入一个节点算法的O(㏒n),插入n个的总复杂度为O(n㏒n)。

posted on 2019-06-02 23:57  きりぎりさん  阅读(90)  评论(0编辑  收藏  举报

导航