数据结构上机实验之二分查找
2015-08-06 11:07
447 查看
题目描述
在一个递增的序列里,查找元素是否存在,若存在输出YES,不存在输出NO.输入
本题多组数据,首先输入一个数字n(n>=100000),然后输入n个数,数据保证数列递增,然后再输入一个查找数字。输出
若存在输出YES,不存在输出NO.示例输入
4 1 3 5 8 3
示例输出
YES
#include<stdio.h> #include<string.h> #define N 100001 int a ; int main() { int n,m,i,low,high,mid; while(~scanf("%d",&n)) { for(i=0;i<=n-1;i++) { scanf("%d",&a[i]); } scanf("%d",&m); int flag=1; low=0; high=n-1; while(low<high) { mid=(low+high)/2; if(m==a[mid]) { flag=0; break; } else if(m<a[mid]) { high=mid-1; } else { low=mid+1; } } if(flag==0) { printf("YES\n"); } else { printf("NO\n"); } } return 0; }
相关文章推荐
- 【黑马程序员-学习笔记】数据结构-栈与队列
- 数据结构四:栈的两种形式LinkStack和SeqStack用线性表的实现方式,以及SeqQueue和LinkQueue的实现
- Python中的高级数据结构详解
- 数据结构05:图
- 数据结构实验之栈三:后缀式求值
- 【三】nginx的数据结构(1)——ngx_int_t与ngx_rbtree_t
- OgnlContext、OgnlValueStack、CompoundRoot的数据结构
- AVL树——深入浅出,一目了然
- 数据结构知识点复习
- 高级数据结构之线段树、并查集博客精选
- machine learning in coding(python):pandas数据包DataFrame数据结构简介
- 单链表
- 我知道点redis-数据结构与对象(链表)
- C/C++经典算法精华整理(3)-实现栈的数据结构
- 数据结构 表达式求值
- c++类实现2叉树的抽象数据结构
- 线性表---顺序表
- 零基础学习视频解码之FFMpeg中比较重要的函数以及数据结构
- 数据结构-----链表
- 封装c++与matlab引擎交互的数据结构:行优先矩阵类