亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > C++ > 正文

C++二分查找(折半查找)算法實例詳解

2020-01-26 14:09:23
字體:
來源:轉載
供稿:網友

本文實例講述了C++二分查找(折半查找)算法。分享給大家供大家參考,具體如下:

二分查找又稱折半查找,優點是比較次數少,查找速度快,平均性能好;其缺點是要求待查表為有序表,且插入刪除困難。

因此,折半查找方法適用于不經常變動而查找頻繁的有序列表。

二分查找思想

首先,假設表中元素是按升序排列,將表中間位置記錄的關鍵字與查找關鍵字比較,如果兩者相等,則查找成功;

否則利用中間位置記錄將表分成前、后兩個子表,如果中間位置記錄的關鍵字大于查找關鍵字,則進一步查找前一子表,否則進一步查找后一子表。

重復以上過程,直到找到滿足條件的記錄,使查找成功,或直到子表不存在為止,此時查找不成功。

基本算法C語言實現代碼:

int binary_search(int arr[], int len, int elem){  int low = 0;  int high = len - 1;  while (low <= high)  {    int mid = (low + high) / 2;    if (elem == arr[mid]){   //相等,返回mid      return mid;    }    else if (elem > arr[mid]){      low = mid + 1;  //元素比區間中間元素大,取區間中間元素的下一個元素作為新區間起始位置    }    else{      high = mid - 1; //元素比區間中間元素小,取區間中間元素的上一個元素作為新區間結束位置    }  }  return -1;}

添加檢測是否是已排好序數組的程序實例

#include <iostream>using namespace std;int binary_search(int arr[], int len, int elem){  int low = 0;  int high = len - 1;  while (low <= high)  {    int mid = (low + high) / 2;    if (elem == arr[mid]){      return mid;    }    else if (elem > arr[mid]){      low = mid + 1;    }    else{      high = mid - 1;    }  }  return -1;}//檢測是否排好序int is_sorted(int arr[], int len){  int sorted = 1;  for (int i = 0; i < len - 1; i++)  {    sorted = sorted && arr[i] <= arr[i + 1];  }  return sorted;}int main(){  int arr[] = { 1, 3, 5, 7, 9, 11, 12, 15, 18, 23, 25, 26 };  int len = sizeof(arr) / sizeof(int);  int pos;  int sorted = is_sorted(arr, len);  if (sorted)  {    pos = binary_search(arr, len, 26);    cout << "pos = " << pos << endl;  }  system("pause");}

運行結果:

pos = 11請按任意鍵繼續. . .

希望本文所述對大家C++程序設計有所幫助。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
国产精品成人观看视频国产奇米| 揄拍成人国产精品视频| 亚洲人午夜精品| 欧美成人自拍视频| 亚洲免费电影在线观看| 久久久国产精品免费| 亚洲jizzjizz日本少妇| 2024亚洲男人天堂| 中文字幕日本精品| 中文日韩电影网站| 国产精品久久久亚洲| 奇米四色中文综合久久| www.久久色.com| 欧美大荫蒂xxx| 国模吧一区二区三区| 国产精品精品久久久| 久久精品国产免费观看| 91探花福利精品国产自产在线| 日韩精品极品在线观看| 久久成人亚洲精品| 国产盗摄xxxx视频xxx69| 亚洲女人被黑人巨大进入| 日韩亚洲综合在线| 成人97在线观看视频| 热久久免费国产视频| 欧美极品少妇全裸体| 97国产精品免费视频| 亚洲视频777| 久久久999国产| 97在线视频免费播放| 国产香蕉97碰碰久久人人| 97婷婷大伊香蕉精品视频| 国产视频丨精品|在线观看| 一区二区三区久久精品| 亚洲男人天堂久| 欧美日韩国产成人高清视频| 日本成人在线视频网址| 精品久久久久久久久久ntr影视| 欧美国产欧美亚洲国产日韩mv天天看完整| 亚洲xxxx视频| 日韩av在线影视| 亚洲精品午夜精品| 日韩电影免费在线观看| 亚洲丝袜在线视频| 国产精品伦子伦免费视频| 亚洲色在线视频| 神马国产精品影院av| 亚洲аv电影天堂网| 精品一区二区三区四区| 亚洲成人黄色网址| 久久777国产线看观看精品| 欧美丝袜第一区| 欧美丝袜一区二区三区| 538国产精品一区二区在线| 欧美高清第一页| 亚洲尤物视频网| 欧美一级在线亚洲天堂| 欧美色欧美亚洲高清在线视频| 色诱女教师一区二区三区| 青草热久免费精品视频| 国产精品夜色7777狼人| 性色av一区二区三区红粉影视| 国产精品免费小视频| 精品无人国产偷自产在线| 911国产网站尤物在线观看| 精品无人区乱码1区2区3区在线| 久久久影视精品| 久久久久久久色| 亚洲美女免费精品视频在线观看| 国产不卡精品视男人的天堂| 欧美性猛交xxxx黑人| 亚洲成年人在线播放| 亚洲成**性毛茸茸| 日韩av电影国产| 狠狠躁夜夜躁人人爽天天天天97| 日韩免费精品视频| 亚洲电影第1页| 精品成人国产在线观看男人呻吟| 精品伊人久久97| 国产91在线视频| 亚洲999一在线观看www| 日韩在线观看你懂的| 国产精品久久久久福利| 久久男人资源视频| 欧美精品久久久久久久| 亚洲视频日韩精品| 在线观看欧美日韩| 国产欧美精品va在线观看| 91av在线看| 欧美人在线观看| 91亚洲精华国产精华| 91久久在线播放| 精品视频www| 国产精品流白浆视频| 91色琪琪电影亚洲精品久久| 欧美日韩国产中字| 亚洲成人久久一区| 亚洲成人av在线播放| 久久免费观看视频| 亚洲国产福利在线| 日韩美女视频中文字幕| 亚洲国产精品免费| 欧美插天视频在线播放| 亚洲精品一区在线观看香蕉| 日韩av免费在线观看| 日韩专区中文字幕| 亚洲欧美日韩中文在线| 国产精品白嫩美女在线观看| 国产一区二区三区精品久久久| 久久精品国产99国产精品澳门| 欧美精品久久久久久久免费观看| 亚洲自拍在线观看| 国产视频精品va久久久久久| 欧美电影在线观看网站| 国产在线视频91| 欧美大全免费观看电视剧大泉洋| 日韩av在线网| 亚洲欧美日本另类| 97久久精品视频| 国产成人久久久| 色www亚洲国产张柏芝| 国产精品爱久久久久久久| 国产69精品久久久久久| 久久色在线播放| 成人激情视频在线播放| 81精品国产乱码久久久久久| 久久精品国产亚洲一区二区| 91精品国产自产91精品| 亚洲二区在线播放视频| 成人av番号网| 日韩在线视频免费观看高清中文| 欧美精品videos另类日本| 97久久精品人人澡人人爽缅北| 欧美xxxx做受欧美.88| 国产精品扒开腿爽爽爽视频| 一区二区成人av| 日韩国产高清污视频在线观看| 欧美国产日韩二区| 欧美成人免费全部观看天天性色| 国产精品白丝av嫩草影院| 亚洲综合成人婷婷小说| 国产成人精品免高潮在线观看| 欧美xxxx18国产| 日韩欧美中文字幕在线观看| 亚洲精品av在线| 国产精品午夜国产小视频| 亚洲毛片在线观看| 色综合久久88色综合天天看泰| 日韩av综合网站| 在线播放国产一区中文字幕剧情欧美| 欧美在线观看网址综合| 亚洲欧美国产精品久久久久久久| 亚洲wwwav| 亚洲高清一二三区| 亚洲国产小视频在线观看| 91久久精品在线| 一区二区成人av| 夜夜嗨av一区二区三区四区| 日韩精品在线视频美女| 日韩av在线网页| 国产欧美一区二区白浆黑人| 中文字幕一区二区精品| 日韩在线免费高清视频| 国产成人极品视频|