教辅写的二分查找

来源:互联网 发布:pdf.js 使用实例 编辑:程序博客网 时间:2024/04/28 16:03
#include <stdio.h>int data[20000];int binary_search(int d[], int s, int e, int q){    int left = s - 1, right = e, mid;    while (left + 1 < right)    {        mid = (left + right) / 2;        if (d[mid] == q)            return mid;        else if (d[mid] < q)            left = mid;        else             right = mid;    }    return -1;}int main(){    int i, m, n, s, e, q;    scanf("%d", &n);    for (i = 0; i < n; i++)        scanf("%d", data + i);    scanf("%d", &m);    for (i = 0; i < m; i++) {        scanf("%d%d%d", &s, &e, &q);        printf("%d\n", binary_search(data, s, e, q));    }    return 0;}

原创粉丝点击