顺序查找时间复杂度: O(n)
顺序查找缺点:效率低
顺序查找优点:算法简单,对元素次序无要求。
既适用于顺序表,又可用于单链表;
折半查找的效率比顺序查找高。 O(log2n)
折半查找只能适用于有序表,并且以顺序存储结构存储。
1-3
适于动态查找表进行高效率查找的组织结构是分块有序表 F
2-5
已知N元整型数组a存放N个学生的成绩,已按由大到小排序,以下算法是用对分(折半)查找方法统计成绩大于或等于X分的学生人数,请填空使之完善。
#define N /学生人数/
int uprx(int a[N],int x ) /函数返回大于等于X分的学生人数/
{
int head=1,mid,rear=N;
do {
mid=(head+rear)/2;
if(x<=a[mid]) (1) else (2) ;
}while(__(3) _);
if (a[head]<x) return head-1;
return head;
} D
A.(1)rear=mid (2)head=mid (3)head>rear
B.(1)head=mid+1 (2)head=mid+1 (3)head=rear
C.(1)rear=mid-1 (2)head=mid (3)head=rear
D.(1)rear=mid-1 (2)head=mid+1 (3)head>rear
2-7
Given a sequentially stored list L of 16 sorted records. If binary search is used to find a record that does not exist, then the maximum number of comparisons is: B
A.4
B.5
C.6
D.7
2-9
对一个长度为 10 的排好序的表用二分法查找,若查找不成功,至少需要比较的次数是()。B
A.4
B.3
C.5
D.6
2-10
折半查找对应的判定树中,外部结点是( )。B
A.一次成功查找过程终止的结点
B.一次失败查找过程终止的结点
C.一次成功查找过程中经过的中间结点
D.一次失败查找过程中经过的中间结点