第二章 :查詢與排序-------二分查詢的遞迴解法
二分查詢的遞迴解法
全範圍內二分查詢:
等價於三個子問題:
左邊找(遞迴)
中間找
右邊找(遞迴)
/*遞迴解法*/
int binarySearch(int arr[],int low,int high,int key){
if(low>high) {
return -1;
}
int mid=low+((high-low)>>1);
int midVal=arr[mid];
if(midVal<key){
return binarySearch(arr,mid+1,high,key);
}
else if(midVal>key){
return binarySearch(arr,low,high-1,key);
}
else{
return mid; //key found
}
}
相關文章
- 第二章 :查詢與排序---------遞迴、查詢與排序補充排序遞迴
- 第二章 :查詢與排序-------遞迴形式進行插入排序排序遞迴
- 遞迴-M--二分查詢遞迴
- 第二章 :查詢與排序-------希爾排序排序
- 第二章 :查詢與排序-------遞迴經典問題——漢諾塔問題排序遞迴
- sqlalchemy 遞迴查詢SQL遞迴
- PostgreSQL 遞迴查詢SQL遞迴
- SqlServer遞迴查詢SQLServer遞迴
- iOS 演算法之排序、查詢、遞迴iOS演算法排序遞迴
- 二分法查詢(遞迴實現)遞迴
- 查詢——二分查詢
- 遞迴查詢子元素遞迴
- 第二章 :查詢與排序-------2.16 解題實戰_小白上樓梯(遞迴設計)排序遞迴
- Python遞迴函式,二分查詢演算法Python遞迴函式演算法
- 第二章 :查詢與排序-------2.13_三種典型遞迴形式演算法的效能分析排序遞迴演算法
- 二分查詢的兩種實現形式遞迴和迭代遞迴
- 二分查詢(一)——純粹的二分查詢
- java-遞迴(檔案查詢)Java遞迴
- 查詢演算法__二分查詢演算法
- 查詢演算法之二分查詢演算法
- 二分查詢
- 遞迴樹形查詢所有分類遞迴
- 二分查詢 | 二分查詢的一種推薦寫法
- 第二章 :查詢與排序-------2.18題目講解_在有空字串中的有序字串陣列中查詢排序字串陣列
- 排序和查詢排序
- 第二章 :查詢與排序-------2.19題目詳解_找出最長連續遞增子序列排序
- SQL server資料庫with as子句與遞迴查詢的實現SQLServer資料庫遞迴
- 第二章 :查詢與排序-------2.15 分析10種排序演算法的穩定性排序演算法
- 陣列的查詢(搜尋):線性查詢和二分法查詢陣列
- 二分查詢法
- PHP二分查詢PHP
- leetcode——二分查詢LeetCode
- leetcode -- 二分查詢LeetCode
- Java實現遞迴查詢樹結構Java遞迴
- 資料庫遞迴查詢:MySQL VS Sequelize資料庫遞迴MySql
- 透過遞迴查詢應用依賴遞迴
- 二分查詢【折半查詢】演算法 PHP 版演算法PHP
- oracle之樹狀結構的儲存與展示(遞迴查詢)Oracle遞迴