2039-数据结构上机实验之二分查找
来源:互联网 发布:淘宝运营岗位要求 编辑:程序博客网 时间:2024/05/16 05:20
#include <bits/stdc++.h>using namespace std;int res[1001000];int n;/*二分查找:每次将key值与当前区间的下标mid比较如果key > res[mid] 则在后区间继续查找反之则在前区间查找*//*非递归*//*int QuickSort(int k);int main(){ ios::sync_with_stdio(false); int m; while(cin >> n >> m) { for(int i = 0; i < n; i++) { cin >> res[i]; } while(m--) { int key; cin >> key; key = QuickSort(key); cout << key << endl; } } return 0;}int QuickSort(int k){ int left = 0; int right = n-1; while(left <= right) { int mid = (left + right)/2; if(k == res[mid]) { return mid; } else if(k < res[mid]) { right = mid-1; } else { left = mid+1; } } return -1;}*//*递归实现*/int QuickSort(int k, int right, int left);int main(){ ios::sync_with_stdio(false); while(cin >> n) { for(int i = 0; i < n; i++) { cin >> res[i]; } int key; cin >> key; key = QuickSort(key, 0, n-1); if(key != -1) { cout << "YES" << endl; } else { cout << "NO" << endl; } } return 0;}int QuickSort(int k, int right, int left){ if(right > left) { return -1; } int mid = (right + left)/2; if(k == res[mid]) { return mid; } else if(k < res[mid]) { return QuickSort(k, right, mid-1); } else { return QuickSort(k, mid+1, left); }}
阅读全文
0 0
- [2039]数据结构上机实验之二分查找
- 2039-数据结构上机实验之二分查找
- 2039-数据结构上机实验之二分查找
- 数据结构上机实验之二分查找
- SDUT 数据结构上机实验之二分查找
- 数据结构上机实验之二分查找
- 数据结构上机实验之二分查找
- 数据结构上机实验之二分查找
- 数据结构上机实验之二分查找
- sdut数据结构上机实验之二分查找
- 数据结构上机实验之二分查找
- 数据结构上机实验之二分查找
- 数据结构上机实验之二分查找
- 数据结构上机实验之二分查找
- 数据结构上机实验之二分查找
- 数据结构上机实验之二分查找
- 数据结构上机实验之二分查找
- 数据结构上机实验之二分查找
- Algorithm3——最长公共子序列(LCS)
- day02-还是tkinter
- 《java编程思想》第5章
- 总结-2017/9/21
- HDU
- 2039-数据结构上机实验之二分查找
- 304. Range Sum Query 2D
- H3C无线控制器做用户隔离和DHCP Relay的注意事项
- MQL5语法基础(三)
- Google账户设置
- Hibernate
- lua中的元方法__index __newIndex
- Count Color(线段树+染色问题)
- hdu 2091(空心三角形)