• 简单二分查找模板(查找)


     1 # include <stdio.h>
     2 
     3 int search(int a[], int n, int v)    //这个好像是效率最高的
     4 {
     5     int left = -1, right = n, middle;
     6     while(left+1 != right)
     7     {
     8         middle = left + (right-left) / 2;
     9         if(a[middle] < v)
    10             left = middle;
    11         else
    12             right = middle;
    13     }
    14     if(right >= n || a[right] != v)
    15         right = -1;
    16     return right;
    17 }
    18 
    19 int search1(int a[], int n, int v)
    20 {
    21     int left = 0, right = n-1, middle;
    22     while(left <= right)
    23     {
    24         middle = (left+right) / 2;
    25         if(a[middle] > v)
    26         right = middle - 1;
    27         else if(a[middle] < v)
    28         left = middle +1;
    29         else
    30         return middle;
    31     }
    32     return -1;
    33 }
    34 
    35 int search2(int a[], int n, int v)
    36 {
    37     int left = 0, right = n, middle;
    38     while(left < right)
    39     {
    40         middle = (right + left) / 2;
    41         if(a[middle] > v)
    42         right = middle;
    43         else if(a[middle] < v)
    44         left = middle + 1;
    45         else
    46         return middle;
    47     }
    48     return -1;
    49 }
    50 
    51 int a[1000000];
    52 int main(void)
    53 {
    54     int n, i, t, ans;
    55     while(~scanf("%d", &n))
    56     {
    57         for(i = 0; i < n; i++)
    58             scanf("%d", &a[i]);
    59         scanf("%d", &t);
    60         ans = search(a, n, t);
    61         if(ans <= 0)
    62             printf("NO
    ");
    63         else
    64             printf("YES
    ");
    65     }
    66 
    67     return 0;
    68 }
    二分查找
  • 相关阅读:
    流程控制语句
    VMware虚拟机与Linux Centos7下载及安装教程
    ReduceTask的运行
    Spark最简单基础_欢乐的马小纪
    虚拟机扩容
    centos安装docker
    kafka生产消费者demo
    虚拟机NAT网络
    Spark开发的完整基础_欢乐的马小纪
    centos6 克隆虚机的紧要知识点_____马小纪&
  • 原文地址:https://www.cnblogs.com/Silence-AC/p/3316313.html
Copyright © 2020-2023  润新知