算法导论2.3-5二分查找

#include <iostream>

using namespace std;

int main()

{

    int i,n,a[20],find,num=0;

    cout<<“输入数组大小:”<<endl;

    cin>>n;

    cout<<“输入数组元素:”<<endl;

    for(i=0;i<n;i++)

    {

        cin>>a[i];

    }

    cout<<“输入要查找的数:”<<endl;

    cin>>find;

    int left,right,mid;

    left=0;

    right=n-1;

    mid=(left+right)/2;

    for(i=0;i<n;i++)

    {

        if(a[mid]>find)

        {

            left=mid+1;

        }

        if(a[mid]<find)

        {

            right=mid-1;

        }

        if(a[i]==find)

        {

            cout<<find<<“为:a[“<<i<<“];”<<endl;

            num++;

        }

    }

    if(num==0){cout<<“未找到”<<endl;}

    return 0;

}

    原文作者:查找算法
    原文地址: https://blog.csdn.net/u013025423/article/details/47121743
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞