写出二分查找算法的两种实现


Posted in 面试题 onMay 13, 2013
1)递归方法实现:
int BSearch(elemtype a[],elemtype x,int low,int high)
/*在下届为low,上界为high的数组a中折半查找数据元素x*/
{
int mid;
if(low>high) return -1;
mid=(low+high)/2;
if(x==a[mid]) return mid;
if(x else return(BSearch(a,x,mid+1,high));
}
2)非递归方法实现:
int BSearch(elemtype a[],keytype key,int n)
{
int low,high,mid;
low=0;high=n-1;
while(low {
mid=(low+high)/2;
if(a[mid].key==key) return mid;
else if(a[mid].key else high=mid-1;
}
return -1;
}

Tags in this post...

面试题 相关文章推荐
宝信软件JAVA工程师面试经历
Aug 19 面试题
Java中compareTo和compare的区别
Apr 12 面试题
介绍Ibatis的核心类
Nov 18 面试题
JSF如何进行表格处理及取值
Aug 06 面试题
serialVersionUID具有什么样的特征
Feb 20 面试题
数据库什么时候应该被重组
Nov 02 面试题
北京RT科技有限公司.net工程师面试题
Feb 15 面试题
网络工程师面试(三木通信技术有限公司)
Jun 05 面试题
Linux内核的同步机制是什么?主要有哪几种内核锁
Jul 11 面试题
如何用Python输出一个Fibonacci数列
Aug 28 面试题
如果有两个类A,B,怎么样才能使A在发生一个事件的时候通知B
Mar 12 面试题
Unix如何在一行中运行多个命令
May 29 面试题
编写类String的构造函数、析构函数和赋值函数
May 29 #面试题
C++:memset ,memcpy和strcpy的根本区别
Apr 27 #面试题
C++的几个面试题附答案
Aug 03 #面试题
为什么会有内存对齐
Oct 10 #面试题
数组越界问题
Oct 21 #面试题
static全局变量与普通的全局变量有什么区别?static局部变量和普通局部变量有什么区别?static函数与普通函数有什么区别?
Feb 22 #面试题
介绍一下#error预处理
Sep 25 #面试题
You might like
精致的人儿就要挑杯子喝咖啡
2021/03/03 冲泡冲煮
MySQL授权问题总结
2007/05/06 PHP
ThinkPHP利用PHPMailer实现邮件发送实现代码
2013/09/26 PHP
php实现图片上传并进行替换操作
2016/03/15 PHP
php获取微信openid方法总结
2019/10/10 PHP
jQuery ajax 路由和过滤器使用说明
2011/08/02 Javascript
jquery如何改变html标签的样式(两种实现方法)
2013/01/16 Javascript
一个小例子解释如何来阻止Jquery事件冒泡
2014/07/17 Javascript
jQuery on()方法使用技巧详解
2015/04/16 Javascript
jQuery 局部div刷新和全局刷新方法总结
2016/10/05 Javascript
bootstrap折叠调用collapse()后data-parent不生效的快速解决办法
2017/02/23 Javascript
详解使用vue-router进行页面切换时滚动条位置与滚动监听事件
2017/03/08 Javascript
Vue2.0利用 v-model 实现组件props双向绑定的优美解决方案
2017/03/13 Javascript
jQuery中hover方法搭配css的hover选择器,实现选中元素突出显示方法
2017/05/08 jQuery
JS设计模式之惰性模式(二)
2017/09/29 Javascript
Javacript中自定义的map.js  的方法
2017/11/26 Javascript
JavaScript数据结构之双向链表和双向循环链表的实现
2017/11/28 Javascript
vue+element的表格实现批量删除功能示例代码
2018/08/17 Javascript
[42:24]完美世界DOTA2联赛循环赛 LBZS vs DM BO2第一场 11.01
2020/11/02 DOTA
python数据结构之二叉树的建立实例
2014/04/29 Python
Python实现统计文本文件字数的方法
2017/05/05 Python
疯狂上涨的Python 开发者应从2.x还是3.x着手?
2017/11/16 Python
对pandas将dataframe中某列按照条件赋值的实例讲解
2018/11/29 Python
Python实现的合并两个有序数组算法示例
2019/03/04 Python
Python 操作SQLite数据库的示例
2020/10/16 Python
基于Python模拟浏览器发送http请求
2020/11/06 Python
波兰数码相机及配件网上商店: Cyfrowe.pl
2017/06/19 全球购物
Rossignol金鸡美国官网:始于1907年法国百年雪具品牌
2019/03/06 全球购物
爱尔兰最大的体育零售商:Life Style Sports
2019/06/12 全球购物
全球烹饪课程的领先预订平台:Cookly
2020/01/28 全球购物
劳动模范事迹材料
2014/01/19 职场文书
地球一小时倡议书
2014/04/15 职场文书
劳动纠纷调解协议书格式
2014/11/30 职场文书
世界地球日活动总结
2015/02/09 职场文书
如何用JS实现简单的数据监听
2021/05/06 Javascript
Python学习开发之图形用户界面详解
2021/08/23 Python