数据结构上机实验之二分查找
2015-06-18 17:27
661 查看
**数据结构上机实验之二分查找
Time Limit: 1000ms Memory limit: 65536K 有疑问?点这里^_^
题目描述
在一个递增的序列里,查找元素是否存在,若存在输出YES,不存在输出NO.
输入
本题多组数据,首先输入一个数字n(n>=100000),然后输入n个数,数据保证数列递增,然后再输入一个查找数字。
输出
若存在输出YES,不存在输出NO.
示例输入
4
1 3 5 8
3
示例输出
YES
Time Limit: 1000ms Memory limit: 65536K 有疑问?点这里^_^
题目描述
在一个递增的序列里,查找元素是否存在,若存在输出YES,不存在输出NO.
输入
本题多组数据,首先输入一个数字n(n>=100000),然后输入n个数,数据保证数列递增,然后再输入一个查找数字。
输出
若存在输出YES,不存在输出NO.
示例输入
4
1 3 5 8
3
示例输出
YES
#include <bits/stdc++.h> #define RR freopen("input.txt","r",stdin) #define WW freopen("output.txt","w",stdout) #define ClearAll(A,T) memset(A,T,sizeof(A)) using namespace std; const int Max=110000; int a[Max]; bool Searching(int low,int high,int data) { int mid; while(low<=high) { mid=(low+high)/2; if(a[mid]==data) return true; if(a[mid]<data) { low=mid+1; } else { high=mid-1; } } return false; } int main() { int n,data,i; while(~scanf("%d",&n)) { for( i=0;i<n;i++) { scanf("%d",&a[i]); } scanf("%d",&data); if(Searching(0,n-1,data)) { printf("YES\n"); } else { printf("NO\n"); } } return 0; }
相关文章推荐
- 数据结构上机实验之二分查找 分类: 查找 2015-06-18 17:27 9人阅读 评论(0) 收藏
- 数据结构与算法分析 L6
- 数据结构实验之队列一:排队买饭
- 数据结构实验之队列一:排队买饭 分类: 栈和队列 2015-06-18 17:16 14人阅读 评论(0) 收藏
- 数据结构实验之栈四:括号匹配
- 数据结构实验之栈四:括号匹配 分类: 栈和队列 2015-06-18 17:06 13人阅读 评论(0) 收藏
- 简单数据结构之栈(C++模板库实现)
- 算法基础----关于数据结构中图的相关算法总结探究
- 数据结构与算法-----队列-使用数组(顺序结构)实现
- 算法基础----关于数据结构中树的相关算法总结探究
- [数据结构]线性表之单链表的类模板实现
- 数据结构——链表(c++)
- 数据结构 -- 树
- 数据结构——顺序表(c++)
- 数据结构与算法分析 L5
- Java-数据结构与算法-选择排序与冒泡排序
- 数据结构学习之链表(单向、单循环以及双向)(递归实现)
- [C++]数据结构:最大堆MaxHeap的创建与使用
- 数据结构与算法——希尔排序(Java实现)
- 学习-数据结构-第1讲