二分法的算法步骤是什么?

 我来答
帐号已注销
2022-06-04 · TA获得超过1038个赞
知道小有建树答主
回答量:1.9万
采纳率:77%
帮助的人:505万
展开全部

高中数学合集百度网盘下载

链接:https://pan.baidu.com/s/1znmI8mJTas01m1m03zCRfQ

?pwd=1234

提取码:1234

简介:高中数学优质资料下载,包括:试题试卷、课件、教材、视频、各大名师网校合集。

富港检测技术(东莞)有限公司_
2024-05-27 广告
1、LocateElem(L,e,compare())函数: 初始条件:线性表存在,compare()是数据元素判定函数; 操作结果:返回第一个与e满足关系compare()的数据元素的位序。若不存在,返回0. 由定义的结构体知: typ... 点击进入详情页
本回答由富港检测技术(东莞)有限公司_提供
热点那些事儿
高粉答主

2021-04-22 · 关注我不会让你失望
知道大有可为答主
回答量:8668
采纳率:100%
帮助的人:206万
展开全部

在有序的有N个元素的数组中查找用户输进去的数据x。

算法如下:

1、确定查找范围front=0,end=N-1,计算中项mid=(front+end)/2。

2、若a[mid]=x或front>=end,则结束查找;否则,向下继续。

3.、若a[mid]<x,说明待查找的元素值只可能在比中项元素大的范围内,则把mid+1的值赋给front,并重新计算mid,转去执行步骤2;若a[mid]>x,说明待查找的元素值只可能在比中项元素小的范围内,则把mid-1的值赋给end,并重新计算mid,转去执行步骤2。

扩展资料

基本思想:假设数据是按升序排序的,对于给定值key,从序列的中间位置k开始比较,

如果当前位置arr[k]值等于key,则查找成功;

若key小于当前位置值arr[k],则在数列的前半段中查找,arr[low,mid-1];

若key大于当前位置值arr[k],则在数列的后半段中继续查找arr[mid+1,high],

直到找到为止,时间复杂度:O(log(n))。

本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
帐号已注销
2021-04-21 · TA获得超过77万个赞
知道小有建树答主
回答量:4168
采纳率:93%
帮助的人:164万
展开全部

取中点,将区间一分为二;若,则就是方程的根;否则所求根在的左侧或右侧若,则以代替;若,则以代替;

函数F(x)=lnx+2x-6在区间(2,3)内有零点,如果能够将零点所在的范围尽量缩小,在一定精确度下,可以得到零点的近似值。为了方便,用“取中点”地方法逐步缩小零点所在的范围。

取区间(2,3)的中点2.5,用计算器算的f(2.5)约等于-0.084。

因为F(2.5)f(2.75)<0,所以零点在区间(2.5,2075)内,所以零点所在的范围就缩小了。

扩展资料:

当数据量很大适宜采用该方法。采用二分法查找时,数据需是排好序的。

假设数据是按升序排序的,对于给定值key,从序列的中间位置k开始比较

如果当前位置arr[k]值等于key,则查找成功

若key小于当前位置值arr[k],则在数列的前半段中查找,arr[low,mid-1]

若key大于当前位置值arr[k],则在数列的后半段中继续查找arr[mid+1,high]

参考资料来源:百度百科-二分法

本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式