二分搜尋(折半查詢)
二分搜尋(折半查詢)
虛擬碼
function BinarySearch(List,key) {
left = 0,right = Lis.length - 1
while left <= right
mid = (left + right) / 2
if List[mid] is key
return mid
if List[mid] < key
left = mid + 1;
else
right = mid -1;
}
程式碼
#include <stdio.h>
int BinarySearch(int numbers[],int len,int key)
{
int left=1,right=len;
int mid;
while(left <= right){
mid=(left+right)/2;
if(numbers[mid]==key)
return mid;
else if(numbers[mid]<key)
left = mid+1;
else
right = mid-1;
}
return 0;
}
int main() {
int N;
int K;
int m;
int numbers[1000001];
// 反覆讀入數字和查詢數字的數量
while (scanf("%d%d", &N, &K) != EOF) {
for (int i = 1; i <= N; i++)
scanf("%d", &numbers[i]);
for (int j = 0; j < K; j++) {
scanf("%d", &m);
printf("%d",BinarySearch(numbers,N,m));
if(j!=K-1)
printf(" ");
}
}
return 0;
}
相關文章
- 二分查詢【折半查詢】演算法 PHP 版演算法PHP
- Python之 常用查詢演算法:最小項搜尋、順序搜尋、二分搜尋Python演算法
- 搜尋/查詢
- 陣列的查詢(搜尋):線性查詢和二分法查詢陣列
- 二分搜尋樹系列之[查詢(Search)-包含(Contain)]AI
- 二分搜尋樹系列之「查詢(Search)-包含(Contain)」AI
- 折半搜尋學習筆記筆記
- ubuntu 終端內查詢/搜尋Ubuntu
- 折半查詢(C++實現)C++
- 二分查詢和折半插入排序一塊說說-很合適~~~排序
- 查詢——二分查詢
- 折半查詢排序樹畫圖和排序
- 折半查詢法的平均查詢長度(成功/失敗)
- 06 二分搜尋--ing
- 從二分搜尋到二叉搜尋樹
- Elasticsearch 結構化搜尋、keyword、Term查詢Elasticsearch
- 二分查詢(一)——純粹的二分查詢
- 二分查詢
- 唱片查詢管理搜尋軟體:Full Discography for MacMac
- 查詢演算法__二分查詢演算法
- bt引擎-螞蟻磁力搜尋教程大全,如何使用搜尋引擎查詢磁力連結
- fastadmin中快速搜尋時執行查詢的欄位 預設查詢idAST
- 二分查詢法
- PHP二分查詢PHP
- leetcode——二分查詢LeetCode
- leetcode -- 二分查詢LeetCode
- 二分搜尋樹(Binary Search Tree)
- 二分搜尋樹元素的插入
- 查詢演算法之二分查詢演算法
- 二分查詢 | 二分查詢的一種推薦寫法
- MacOS使用搜尋功能查詢隱藏檔案的方法Mac
- jQuery 條件搜尋查詢 實時取值 升降序排序jQuery排序
- Google高階搜尋技巧之高階語法查詢指令Go
- BST查詢結構與折半查詢方法的實現與實驗比較
- LeetCode入門指南 之 二分搜尋LeetCode
- 資料結構-二分搜尋樹資料結構
- 704.二分查詢
- labuladong_二分查詢