查找 二分查找

0人阅读 评论(0) 收藏 举报
分类:

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

Time Limit: 1000 ms Memory Limit: 65536 KiB

Problem Description

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

Input

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

Output

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

Sample Input

4
1 3 5 8
3

Sample Output

YES

#include <iostream>
#include<cstdio>
using namespace std;
int s[1001000];
void f(int l, int r, int k)
{
	int flag=1;
    while(l<=r)
    {
        int mid=(l+r)/2;
        if(k==s[mid]) 
        {
        	cout<<"YES"<<endl;
        	flag=0;
        	break;
		}
		  
        else if(k<s[mid])
        {
            r = mid - 1;
        }
        else if(k>s[mid])
        {
            l = mid + 1;
        }
    }
    if(flag)
    cout<<"NO"<<endl;
}
int main()
{
    int n, i, k;
    while(scanf("%d", &n)!=EOF)
    {
    	for(i=0; i<n; i++)
    {
        scanf("%d", &s[i]);
    }
    
        scanf("%d", &k);
        f(0, n-1, k);
	}
    
    return 0;
}

查看评论

二叉树, 二叉查找树,二分查找算法

二叉树二叉树跟树有区别,最大的一点就是:树的度没有限制,而二叉树最多则不能超过2个度基础二叉树由结点组成,结点包含的链接可以为空( null)或者指向其他结点,在二叉树中,每个结点只能有一个父结点(只...
  • JonsTank2013
  • JonsTank2013
  • 2016-03-15 13:05:35
  • 3396

数据结构实验之查找四:二分查找

数据结构实验之查找四:二分查找 Time Limit: 20ms   Memory limit: 65536K  有疑问?点这里^_^ 题目描述 在一个给定的无重复元素的递增...
  • guoqingshuang
  • guoqingshuang
  • 2015-12-04 09:51:13
  • 1041

三大查找算法总结:二分查找,分块查找和哈希表查找。

终于下定决心把查找和排序好好整一整,今天就弄了一个对分查找,也成为对半查找。原理十分简单,话不多说,直接上源代码。未完待续,持续更新中。。。 1、对半查找,要求输入有序序列。 // sort.cp...
  • XIAXIA__
  • XIAXIA__
  • 2013-06-22 22:06:22
  • 3007

查找算法(二叉搜索树查找,二分查找,hash查找)

这个是在链表基础上根据实验内容然后添加了一个二分查找的功能: 二分查找在竞赛极其开发中极其有用,尤其是二分的思想!!! [cpp] view plain copy print? usin...
  • lsgqjh
  • lsgqjh
  • 2016-07-12 12:58:16
  • 913

基于二分查找法的数值区间查找

本文给出基于二分查找法的区间查找的定义,并辅以C++源码,并介绍一下二分查找法的区间查找的应用。...
  • zjq2008wd
  • zjq2008wd
  • 2014-08-18 14:54:44
  • 1939

二分查找的平均查找长度详解

看数据结构书的时候碰上的内容,我自己将它化成关于级数的题,然后自己算的过程,基本就是等比级数和等差级数的混合内容。 满二叉树来分析折半查找的平均长度(二分查找二叉判定树 h=层高 n=节点数 ...
  • Turne
  • Turne
  • 2016-01-09 16:23:54
  • 5787

flash as3 二分查找动画演示

  • 2012年07月02日 18:04
  • 1.43MB
  • 下载

基本查找:数组元素无序(从头找到尾) * 二分查找(折半查找):数组元素有序

package cn.itcast_04; /*  * 查找:  * 基本查找:数组元素无序(从头找到尾)  * zhebian  * 分析:  * A:定义最大索引,最小索引 ...
  • qq_35257397
  • qq_35257397
  • 2016-08-02 16:42:55
  • 172

java泛型的二分查找

/** * Created by Void Young on 7:57 PM 6/25/2016 . * IDEA-Test . * 泛型二分查找 * */ public class Gen...
  • longforus
  • longforus
  • 2016-06-25 21:02:00
  • 1020
    个人资料
    持之以恒
    等级:
    访问量: 3932
    积分: 1087
    排名: 4万+
    文章存档
    最新评论