数据结构上机实验之二分查找(SDUT 2039)

来源:互联网 发布:淘宝客服这个工作好吗 编辑:程序博客网 时间:2024/05/16 11:17

数据结构上机实验之二分查找

Time Limit: 1000ms   Memory limit: 65536K  有疑问?点这里^_^

题目描述

 在一个递增的序列里,查找元素是否存在,若存在输出YES,不存在输出NO.

输入

 本题多组数据,首先输入一个数字n,然后输入n个数,数据保证数列递增,然后再输入一个查找数字。

输出

 若存在输出YES,不存在输出NO.

示例输入

41 3 5 83

示例输出

YES

提示

 

来源

 cz

示例程序

 

#include <stdio.h>int f[100010];int binsearch (int a[],int low,int high,int key){    while (low<=high)    {        int mid=(low+high)/2;        if(a[mid]==key)            return mid;        else if (a[mid]<key)            low=mid+1;        else high=mid-1;    }    return -1;}int main(){    int m,n,i;    while (~scanf("%d",&m))    {        for(i=1;i<=m;i++)        {            scanf("%d",&f[i]);        }        scanf("%d",&n);        if(binsearch (f,1,m,n)!=-1)            printf("YES\n");        else            printf("NO\n");    }    return 0;}


0 0
原创粉丝点击