历右子树;并且,在遍历左、右子树时,仍然先遍历左子树,然后访问根结点,最后遍历右子树。r
(3)后序遍历:先遍历左子树、然后遍历右子树,最后访问根结点;并且,在遍历左、右子树时,仍然先遍历左子树,然后遍历右子树,最后访问根结点。r
r
疑难解答:树与二叉树的不同之处是什么?r
在二叉树中,每一个结点的度最大为2,即所有子树(左子树或右子树)也均为二叉树,而树结构中的每一个结点的度可以是任意的。r
15查找技术r
考点9顺序查找r
考试链接:r
考点9在笔试考试中考核几率在30,一般出现选择题中,分值为2分,读者应该具体掌握顺序查找的算法。r
查找是指在一个给定的数据结构中查找某个指定的元素。从线性表的第一个元素开始,依次将线性表中的元素与被查找的元素相比较,若相等则表示查找成功;若线性表中所有的元素都与被查找元素进行了比较但都不相等,则表示查找失败。r
在下列两种情况下也只能采用顺序查找:r
(1)如果线性表为无序表,则不管是顺序存储结构还是链式存储结构,只能用顺序查找。r
(2)即使是有序线性表,如果采用链式存储结构,也只能用顺序查找。r
考点10二分法查找r
考试链接:r
考点10在笔试考试中考核几率为30,一般出现填空题中,分值为2分,考核比较多查找的比较次数,读者应该具体掌握二分查找法的算法。r
二分法只适用于顺序存储的,按非递减排列的有序表,其方法如下:r
设有序线性表的长度为
,被查找的元素为i,r
(1)将i与线性表的中间项进行比较;r
(2)若i与中间项的值相等,则查找成功;r
(3)若i小于中间项,则在线性表的前半部分以相同的方法查找;r
(4)若i大于中间项,则在线性表的后半部分以相同的方法查找。r
r
疑难解答:二分查找法适用于哪种情况?r
二分查找法只适用于顺序存储的有序表。在此所说的有序表是指线性表中的元素按值非递减排列(即从小到大,但允许相邻元素值相等)。r
这个过程一直进行到查找成功或子表长度为0为止。r
对于长度为
的有序线性表,在最坏情况下,二分查找只需要比较log2
次。r
16排序技术r
考点11交换类排序法r
考试链接r
考点11属于比较难的内容,一般以选择题的形式考查,考核几率为30,分值约为2分,读者应该熟练掌握几种排序算法的基本过程。r
冒泡排序法和快速排序法都属于交换类排序法。r
(1)冒泡排序法r
首先,从表头开始往后扫描线性表,逐次比较相邻两个元素的大小,若前面的元素大于后面的元素,则将它们互换,不断地将两个相邻元素中的大者往后移动,最后最大者到了线r