oj刷题--2852二分查找
来源:互联网 发布:h5打开淘宝app 编辑:程序博客网 时间:2024/06/05 09:36
2852: 二分查找
时间限制: 1 Sec 内存限制: 128 MB提交: 215 解决: 79
题目描述
输入不多于20个升序排列的整数,以及一个待查找的数key,输出key在序列中的位置(从0开始计位序)。查找采用二分查找的方法进行,请将下面的程序补充完整。
#include <iostream>
using namespace std;
const int SIZE=20;
int binary_search(int arr[], int n, int k);
int main()
{
int d[SIZE];
int index, key, num=0;
cin>>key;
while(cin>>d[num])
num++;
index = binary_search(d, num, key);
if(index >= 0)
cout<<index<<endl;
else
cout<<"NO"<<endl;
return 0;
}
//提交全部程序代码
int binary_search(int arr[], int n, int k)
{
int i=-1;
int low=_____(1)_____,high=_____(2)_____,mid;
while(low<=high)
{
mid=______(3)________;
if(arr[mid]==k)
{
i=mid;
break;
}
else if(_____(4)_____)
high=mid-1;
else
_______(5)__________;
}
return i;
}
输入
先输入要查找的数
下一行输入升序排列的若干整数(不超过20个),以CTRL-Z结束
输出
若要查找的数在序列中,输出其在序列中的位置(从0开始计数),若不能找到,输出NO
样例输入
4523 36 45 76 81 88 89 91
样例输出
2
/*烟台大学计算机学院 2017作者:张威完成日期:2017年2月25日*/#include <iostream>using namespace std;const int SIZE=20;int binary_search(int arr[], int n, int k);int main(){ int d[SIZE]; int index, key, num=0; cin>>key; while(cin>>d[num]) num++; index = binary_search(d, num, key); if(index >= 0) cout<<index<<endl; else cout<<"NO"<<endl; return 0;}//提交全部程序代码int binary_search(int arr[], int n, int k){ int i=-1; int low=0,high=n-1,mid; while(low<=high) { mid=(high+low)/2; if(arr[mid]==k) { i=mid; break; } else if(arr[mid]>k) high=mid-1; else low=mid+1; } return i;}
- oj刷题--2852二分查找
- OJ补写二分查找
- 九度OJ 1069 二分查找问题
- 【九度OJ】1029【二分查找】
- Light oj Trailing Zeroes (III) (二分查找)
- 数据结构实验之查找四:二分查找 (sdut oj 3376)
- SDUT OJ 3376 数据结构实验之查找四:二分查找
- 九度OJ 1069 查找学生信息(二分查找)
- YTU 2852: 二分查找
- SDUT OJ 2039数据结构上机实验之二分查找
- Light OJ 1138 (二分查找+分解阶乘)
- 洛谷Oj-连续自然数和-前缀和 + 二分查找
- 二分查找
- 二分查找
- 二分查找
- 二分查找
- 二分查找
- 二分查找
- ionic ——— 下拉刷新及上拉加载
- 第二章简答题图书馆管理信息
- 值不能为 null。参数名: source
- cordova-plugin-file 文件操作整理(一)
- Markdown 用法
- oj刷题--2852二分查找
- 第三章课后简答题
- ibm urbancode example
- 写代码时容易出现的错误(持续更新)
- Java单列设计模式你用对了吗
- Android:关于ViewPager 适配器notifyDataSetChanged不能刷新
- 程序员面试金典-8.反转字串
- hdu 2821 Pusher DFS
- 通过特性+反射 实现对属性int值范围的检测