知识大全 数据结构考研分类复习真题 第四章 答案[17]

Posted 元素

篇首语:实践是知识的母亲,知识是生活的明灯。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 数据结构考研分类复习真题 第四章 答案[17]相关的知识,希望对你有一定的参考价值。

   [题目分析]本题属于查找 待查找元素是字符串(长 ) 将查找元素存放在一维数组中 二分检索(即折半查找或对分查找) 是首先用一维数组的 中间 元素与被检索元素比较 若相等 则检索成功 否则 根据被检索元素大于或小于中间元素 而在中间元素的右方或左方继续查找 直到检索成功或失败(被检索区间的低端指针大于高端指针) 下面给出类C语言的解法

  typedef struct node  char data[ ];//字符串长   node;

  非递归过程如下

  int binsearch(node string [];int n;char name[ ])//在有n个字符串的数组string中 二分检索字符串name 若检索成功 返回name在string中的下标 否则返回   int low = high = n ;//low和high分别是检索区间的下界和上界  while(low <= high)  mid = (low + high) / ; //取中间位置  if(strcmp(string[mid] name) == ) return (mid); //检索成功  else if(strcmp(string[mid] name)< ) low=mid+ ; //到右半部分检索  else high=mid ;  //到左半部分检索    return ; //检索失败  //算法结束

  最大检索长度为log n

cha138/Article/program/sjjg/201311/22600

相关参考