十四周 项目一-折半查找
2015-11-30 16:25
483 查看
/* 文件名称:main.cpp 作者 :王超 完成日期:2015年11月30日 问题描述:折半查找 */
#include <stdio.h> #define MAXL 100 typedef int KeyType; typedef char InfoType[10]; typedef struct { KeyType key; //KeyType为关键字的数据类型 InfoType data; //其他数据 } NodeType; typedef NodeType SeqList[MAXL]; //顺序表类型 int BinSearch(SeqList R,int n,KeyType k) { int low=0,high=n-1,mid; while (low<=high) { mid=(low+high)/2; if (R[mid].key==k) //查找成功返回 return mid+1; if (R[mid].key>k) //继续在R[low..mid-1]中查找 high=mid-1; else low=mid+1; //继续在R[mid+1..high]中查找 } return 0; } int main() { int i,n=10; int result; SeqList R; KeyType a[]= {1,3,9,12,32,41,45,62,75,77},x=75; for (i=0; i<n; i++) R[i].key=a[i]; result = BinSearch(R,n,x); if(result>0) printf("序列中第 %d 个是 %d\n",result, x); else printf("木有找到!\n"); return 0; }
相关文章推荐
- 第十一周项目1 验证算法1层次算法遍历的验证
- C语言中字符的输入输出以及计算字符个数的方法详解
- 第八周项目3-顺序串算法
- Spring事务管理的三种方式
- 常用软件的归档
- Javascript:谈谈JS的全局变量跟局部变量
- hdu 1251统计难题
- 冒泡排序
- android studio 环境配置
- How to complete the task in Scrapy tutorial
- 第十四周——项目一(验证算法)
- 数据结构实践——图遍历算法实现
- 第15周 项目1—哈希表及其运算的实现
- 项目1.2—验证算法
- 连接svn的问题
- 第十四周 项目3 分块查找
- HTML5 Canvas(画布)图像处理
- 第14周 项目1(1)-折半查找
- 第八周项目2-建立链串算法库
- IOS学习之数据库(8)--FMDB数据库队列