二分法查找C++实现

来源:互联网 发布:知我药妆网假货多吗 编辑:程序博客网 时间:2024/06/05 19:31
#include <iostream>#include <vector>using namespace std;int binary_seacher(vector<int> &v, int target){    if (v.empty())        return -1;    int index1 = 0, index2 = v.size() - 1, mid = 0;    while (index1 <= index2)    {        mid = (index1 + index2) / 2;        if (v[mid] == target)            return mid;        if (v[mid] > target)            index2 = mid-1;        if (v[mid] < target)            index1 = mid+1;    }    return -1;}int main(){    int n = 0, target = 0;    cin >> n >> target;    vector<int> v(n);    for (int i = 0; i < n; i++)    {        cin >> v[i];    }    cout << binary_seacher(v, target);    system("pause");    return 0;}
1 0
原创粉丝点击