问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

二分查找算法

发布网友 发布时间:2022-04-04 00:46

我来回答

2个回答

热心网友 时间:2022-04-04 02:16

二分查找又称折半查找,优点是比较次数少,查找速度快,平均性能好;其缺点是要求待查表为有序表,且插入删除困难。因此,折半查找方法适用于不经常变动而
查找频繁的有序列表。首先,假设表中元素是按升序排列,将表中间位置记录的关键字与查找关键字比较,如果两者相等,则查找成功;否则利用中间位置记录将表
分成前、后两个子表,如果中间位置记录的关键字大于查找关键字,则进一步查找前一子表,否则进一步查找后一子表。重复以上过程,直到找到满足条件的记录,
使查找成功,或直到子表不存在为止,此时查找不成功。
int binSearch(const int *Array,int start,int end,int key)
{
int left,right;
int mid;
left=start;
right=end;
while (left<=right) { /注释中为递归算法,执行效率低,不推荐
mid=(left+right)/2;
/* if (key<Array[mid]) {
return(binSearch(Array,left,mid,key));
}
else if(key>Array[mid]){
return (binSearch(Array,mid+1,right,key));
}
else
return mid;
*/
if (key<Array[mid]) {
right=mid-1;
}
else if(key>Array[mid]){
left=mid+1;
}
else
return mid;
}
return -1;
}

热心网友 时间:2022-04-04 03:34

前提要求数据排好序,有递归和非递归版本
int binSearch(const int *Array,int start,int end,int key)
{
int left,right;
int mid;
left=start;
right=end;
while (left<=right) { /注释中为递归算法,执行效率低,不推荐
mid=(left+right)/2;
/* if (key<Array[mid]) {
return(binSearch(Array,left,mid,key));
}
else if(key>Array[mid]){
return (binSearch(Array,mid+1,right,key));
}
else
return mid;
*/
if (key<Array[mid]) {
right=mid-1;
}
else if(key>Array[mid]){
left=mid+1;
}
else
return mid;
}
return -1;
}
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
13岁一直到18岁晚上经常熬夜会有什么影响 具象表现素描内容简介 ...| 从14世纪文艺复兴到20世纪具象表现绘画 · 168幅画 · 图解西方... 【漫画赏析】比喻具象化——《孤高之人》手法分析 具象美术作品有哪些 具象艺术艺术家介绍 话说 曾经有个演唱会 是初音未来演唱会 39祭 谁知道微信聊天记录删掉了,还能恢复过来吗?有什么软件可以恢复吗?不... 六爻。测缘分。测婚姻 礼仪起源于祭祀的证据是什么? 那里能下载到关于希腊神话和传说的书籍或人物图片? 如何把书上的人物照片画下来 初一上册历史书中重点的人物图片有哪些 急求高尔基《童年》人物关系图 高分!!! 《喜欢你》一书 人物图片 求高手帮助,请问这些有关古代人物图片的出处~是什么书籍,资料? 360儿童手表绑定无法收到短信设置绑定怎么办 绝世唐门实体书封面的图片,最好加解释封面上的人物是谁,刚开始先只给基础分10分, 求绝世唐门实体书1~14册的封面人物名称,最好有图 360儿童电话手表插卡进去却显示没有网络或已欠费?? 这是哪本书上的人物,求答案,万分感谢 想找一些卡通人物拿着书或正在读书的图片,非常感谢 简爱的人物关系图,书中的都要,快点。 360儿童手表什么有时短信接收不到 求绝世唐门实体书封面人物原图 新出来的新风系统有用吗? 360儿童手表为什么会没有信号 儿童图书里的人物名片 新风系统的用处真的有那么好吗? 一组金庸书中人物的手绘图,你最喜欢金庸笔下哪一个 李尔王这本书的人物关系图 美国美联大学的介绍 美联属是美国什么机构? 美国美联储是什么组织机构?其职能是什么? MLB里的国联和美联是怎么样的 超级碗中的美联和国联的区别 美联大学的学校规模 美国美联大学在美国的具体地点在哪里? 美国美联公司北京代表处怎么样? 为何美国不建立美联? 美国美联大学Inter American University? 美国美联国际公司北京代表处怎么样? 美联安保(usababyproductinc)是哪国的公司,有什么资质? 去美国,美联和达美那个航班好些? 美国美联银行有限公司上海代表处怎么样? 美联航和美AA是一家吗? 美联航怎么样? 用c++语言实现二分搜索算法 有没有适合一个人吃的温暖的食物? 冬天你吃过最温暖的食物是什么?