7-1 二分查詢 (20分)
7-1 二分查詢 (20分)
利用二分查詢找出所給出的數在陣列中的下標
輸入格式:
第一行輸入n和m表示陣列有n個資料,m表示要對m個數進行查詢
輸出格式:
所有輸出在一行完成,行末沒有多餘空格和多餘回車。
輸入樣例:
5 5
1 2 3 4 5
1 2 3 4 5
輸出樣例:
0 1 2 3 4
AC
這個如果使用cin輸入的話,必須加上加速器,否則就會執行超時的。
還可以使用scanf輸入,這裡就可以不使用加速器。
二分查詢之前貌似寫過一次,
,,,
但是,這次我的榆木腦袋又又又又又做不出來了。
演算法詳情還是看的百度,,,,,,
#include<bits/stdc++.h>
using namespace std;
int main() {
ios_base::sync_with_stdio(0);
cin.tie(0);
cout.tie(0);
int m,n;
cin>>n>>m;
int a[n];
for(int i=0; i<n; i++)
cin>>a[i];
int cnt=0;
int x;
while(m--) {
cin>>x;
int low=0;
int high=n-1;
while(low<=high) {
int middle=(low+high)/2;
if(x==a[middle]) {
if(cnt++)
cout<<" ";
cout<<middle;
break;
} else if(x>a[middle]) {
low=middle+1;
} else if(x<a[middle]) {
high=middle-1;
}
}
}
return 0;
}
相關文章
- 查詢——二分查詢
- 二分查詢(一)——純粹的二分查詢
- 二分查詢
- 查詢演算法__二分查詢演算法
- 二分查詢法
- PHP二分查詢PHP
- leetcode——二分查詢LeetCode
- leetcode -- 二分查詢LeetCode
- 查詢演算法之二分查詢演算法
- 二分查詢 | 二分查詢的一種推薦寫法
- 704.二分查詢
- labuladong_二分查詢
- 詳解二分查詢
- python二分查詢模板Python
- 二分查詢(c++)C++
- 每日leetcode——二分查詢LeetCode
- Leetcode 704 二分查詢LeetCode
- 二分查詢【折半查詢】演算法 PHP 版演算法PHP
- 【演算法】二分查詢演算法
- 演算法->二分查詢演算法
- 力扣之二分查詢力扣
- 二分查詢的定義
- 二分查詢-不套用模板
- 二分搜尋(折半查詢)
- PHP 實現二分查詢PHP
- 圖解--二分查詢樹圖解
- 二分查詢成長錄
- 牛客網 查詢(二分查詢、北郵機試)
- 二分查詢基礎專題——二分模板
- 陣列的查詢(搜尋):線性查詢和二分法查詢陣列
- 二分查詢 理論 例題
- LeetCode演算法—二分查詢LeetCode演算法
- 基礎二分查詢總結
- 二分查詢的簡單理解
- 二分查詢法(Binary_Search)
- 聊一聊二分查詢法
- 二分查詢(函式實現)函式
- 五、二分法查詢