亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

折半查找法

發布時間:2020-07-18 13:05:17 來源:網絡 閱讀:493 作者:銀河星君 欄目:編程語言
//折半查找法,要求有序序列,默認由小到大
#include <iostream>

using namespace std;
//普通方法
int BinSearch2(int *searchTable,int key,int len)
{
    // 最低位置索引low、最高位置索引high、中間位置索引mid
    // 中間位置的可能情況
    // len為奇數時,mid 為正中間位置 mid的左側和右側用于同樣數目的元素
    // len為偶數時,mid為正中間往左的那一個元素   正中間為小數,正中間往左的那一個位置才是(Low+High)/2
    // low與high的關系
    // 正常情況下low<high
    // low==high時,僅剩下最后一個需要判斷的元素,此元素可能與key相同,也可能不同
    // low>high 未找到與key相同的元素
    int low=0;
    int high=len-1;
    int mid;

    while(low<=high){
        mid=(low+high)/2;
        //找到與key相等的一個元素位置
        if(searchTable[mid]==key)
            return mid;
        if (searchTable[mid]>key)
            high=mid-1;
        else
            low=mid+1;
    }
    return -1;
}
//遞歸方法
int BinSearch3(int *searchTable,int key,int low,int high)
{
    if(low>high)
        return 0;//查找失敗
    int mid=(low+high)/2;
    if(searchTable[mid]==key)
        return mid;//查找成功
    if(searchTable[mid]>key)
        return BinSearch3(searchTable,key,low,mid-1);//左查找
    else
        return BinSearch3(searchTable,key,mid+1,high);//右查找
}
int main(int argc, char *argv[])
{
    int Array[15]={1,2,3,4,5,6,7,8,9,10,11,12,13,14,15};
    cout<<"3的位置是:"<<BinSearch2(Array,8,15)<<endl;
    cout<<"3的位置是:"<<BinSearch3(Array,8,1,15)<<endl;
    return 0;
}


向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

东明县| 留坝县| 恩施市| 兴文县| 高淳县| 天峻县| 昆山市| 广元市| 高平市| 兴海县| 台江县| 汉寿县| 襄汾县| 安泽县| 天镇县| 陇西县| 疏附县| 长阳| 怀仁县| 西充县| 交城县| 河西区| 桐庐县| 彩票| 安塞县| 城口县| 汝阳县| 含山县| 砀山县| 新沂市| 安庆市| 德令哈市| 双桥区| 彭泽县| 岑巩县| 睢宁县| 灵武市| 长宁区| 巧家县| 德安县| 龙南县|