首页 > 试题广场 >

题目来源于王道论坛 在有n(n>1000)个

[单选题]
题目来源于王道论坛

在有nn1000)个元素的升序数组A中查找关键字x。查找算法的伪代码如下所示。

k=0;
 while(k<n 且 A[k]<x) k=k+3;
 if(k<n 且 A[k]==x) 查找成功;
 else if(k-1<n 且 A[k-1]==x) 查找成功;
 else if(k-2<n 且 A[k-2]==x) 查找成功;
 else 查找失败;

本算法与折半查找算法相比,有可能具有更少比较次数的情形是



  • 当x不在数组中
  • 当x接近数组开头处
  • 当x接近数组结尾处
  • 当x位于数组中间位置
推荐

解析:

送分题。该程序采用跳跃式的顺利查找法查找升序数组中的x,显然是x越靠前,比较次数才会越少。

发表于 2018-06-16 11:10:45 回复(0)