设有一个已按各元素的值排好序的顺序表(长度大于2),现分别用顺序查找法和二分查找法查找与给定值k相等的元素,比较的次数分别是s和b,在查找不成功情况下s和b的关系是

admin2009-01-19  37

问题 设有一个已按各元素的值排好序的顺序表(长度大于2),现分别用顺序查找法和二分查找法查找与给定值k相等的元素,比较的次数分别是s和b,在查找不成功情况下s和b的关系是

选项 A、s=b
B、s>b
C、s<b
D、s>=b

答案2

解析 顺序查找的基本思想是:从表的一端开始,顺序扫描线性表,依次将扫描到的结点关键字和给定值K相比较,若当前扫描到的结点关键字与K相等,则查找成功;若扫描结束后,仍未找到关键字等于K的结点,则查找失败。二分查找是一种效率较高的查找方法,要求线性表是有序表。基本思想是:首先将待查的K值和有序表R[0]到R[n-1]的中间位置mid上的结点的关键字进行比较,若相等,则查找完成;否则,若R[mid].key>K,则说明待查找的结点只可能在左子表R[0]到R[mid-1]中,我们只要在左子表中继续进行折半查找,若R[mid].key<K,则说明待查找的结点只可能在右子表R[mid+1]到R[n-1]中,我们只要在右子表中继续进行折半查找。这样,经过一次关键字比较就缩小一半的查找空间。对顺序查找而言,如果查找失败,比较次数为n次;二分查找而言,如果查找失败,比较次数为log2(n+1)次。
转载请注明原文地址:https://jikaoti.com/ti/foQ7FFFM
0

最新回复(0)