二分查找二分查找
var
mid,n,k,i,r,l:longint;
a:array[1..10] of longint;
begin
readln(n,k);
for i:=1 to n do read(a[i]);
r:=n;
l:=1;
while lk then l:=mid+1
else r:=mid-1;
end;
end.
其中K为你要查找的数,以上程序查找你要查找的数,如果找到则L为你要查找的数的序号,如果找不到则L为序列中第一个比你要找的数小的数的序号(输入数据为倒序)
注意:二分查找必须...
二分查找
var
mid,n,k,i,r,l:longint;
a:array[1..10] of longint;
begin
readln(n,k);
for i:=1 to n do read(a[i]);
r:=n;
l:=1;
while l<=r do
begin
mid:=(l+r) shr 1;
if a[mid]=k then begin l:=mid;break;end else
if a[mid]k then l:=mid+1
else r:=mid-1;
end;
end.
其中K为你要查找的数,以上程序查找你要查找的数,如果找到则L为你要查找的数的序号,如果找不到则L为序列中第一个比你要找的数小的数的序号(输入数据为倒序)
注意:二分查找必须用在有序队列,而如果一个队列要插入元素且要保持有序的话,可以选择O(2N)的插入排序
本文档为【二分查找】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑,
图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。