早教吧作业答案频道 -->数学-->
二分法查找的适用条件二分查找法只适用于顺序存储的有序表.在此所说的有序表是指线性表中的元素按值非递减排列(即从小到大,但允许相邻元素值相等).难道不是只要有序就可以?按递减
题目详情
二分法查找的适用条件
二分查找法只适用于顺序存储的有序表.在此所说的有序表是指线性表中的元素按值非递减排列(即
从小到大,但允许相邻元素值相等).难道不是只要有序就可以?按递减排序不可以用二分法吗?
二分查找法只适用于顺序存储的有序表.在此所说的有序表是指线性表中的元素按值非递减排列(即
从小到大,但允许相邻元素值相等).难道不是只要有序就可以?按递减排序不可以用二分法吗?
▼优质解答
答案和解析
说”二分查找法只适用于顺序存储的有序表“是正确的,说”指线性表中的元素按值非递减排列(即从小到大,但允许相邻元素值相等)“是为了程序的确定性.
实际上只要有序就可以.按递减排序也可以用二分法.只是必须把算法规则改变一下.
递增的算法:拿要查找数值与中间序号的数值比较若相等,查找成功;要查找数值比中间序号的数值大,在右边查找,低端序号改为原中间序号加1;要查找数值比中间序号的数值小,在左边查找,高端序号改为原中间序号减1;如此反复.
递减的算法:拿要查找数值与中间序号的数值比较若相等,查找成功;要查找数值比中间序号的数值大,在左边查找,高端序号改为原中间序号减1;要查找数值比中间序号的数值小,在右边查找,低端序号改为原中间序号加1;如此反复.
实际上只要有序就可以.按递减排序也可以用二分法.只是必须把算法规则改变一下.
递增的算法:拿要查找数值与中间序号的数值比较若相等,查找成功;要查找数值比中间序号的数值大,在右边查找,低端序号改为原中间序号加1;要查找数值比中间序号的数值小,在左边查找,高端序号改为原中间序号减1;如此反复.
递减的算法:拿要查找数值与中间序号的数值比较若相等,查找成功;要查找数值比中间序号的数值大,在左边查找,高端序号改为原中间序号减1;要查找数值比中间序号的数值小,在右边查找,低端序号改为原中间序号加1;如此反复.
看了 二分法查找的适用条件二分查找...的网友还看了以下:
求y=sinx+2/sinx,x∈(0,π)的最值解:令t=sinx,x∈(0,π),则t∈(0, 2020-05-13 …
vc++题目求解答17、以下描述正确的是()。A、调用函数时,只能把实参的值传递给形参,形参的值不 2020-05-17 …
SQL查询就是用户使用SQL语句来创建的一种查询。SQL查询主要包括联合查询、传递查询、 【】 和子 2020-05-23 …
在递增数列中怎么判断Sn的最小值为什么有时会有2个值我知道可以用二次函数的方法但是在递增数列中怎么 2020-06-04 …
java选择题解答关于方法的递归算法,说法正确的是()A.递归就是方法自己调用自己B.递归的次数不 2020-06-28 …
函数在上递减,那么在上().A.递增且无最大值B.递减且无最小值C.递增且有最大值D.递减且有最小 2020-07-12 …
过圆C:(x-1)2+(y-1)2=1的圆心,作直线分别交x、y正半轴于点A、B,△AOB被圆分成 2020-07-26 …
已知函数f(x)=1/3x^3-a/2x^2+x在[1,正无穷)上为单调递增函数,求实数a的取值范 2020-07-27 …
若无穷等差数列{an}的首项a1<0,公差d>0,{an}的前n项和为Sn,则以下结论中一定正确的 2020-08-02 …
已知函数f(x)是奇函数,且在区间[1,2]上单调递减,则f(x)在区间[-2,-1]上是()A.单 2020-12-08 …