[作業] 演算法 week 3

國立嘉義大學演算法作業,可觀摩但請勿抄襲。

March 6, 2022 · 2 min · CPP

[作業] 演算法 week 2

國立嘉義大學演算法作業,可觀摩但請勿抄襲。

February 24, 2022 · 2 min · CPP

[作業] 演算法 week 1

國立嘉義大學演算法作業,可觀摩但請勿抄襲。

February 18, 2022 · 3 min · CPP

[Source] 資源分享

好用資源

February 25, 2021 · 1 min · CPP

[Algorithm] 二分搜尋法

二分搜尋法 Binary Search 搜尋是一種很經典的演算法, 其中有一種搜尋法是將 已排序 的數列, 藉由比大小將數列分成 一半 並 縮小 搜尋範圍。 稱之為 「二分搜尋法」、「二元搜尋法」! #include <iostream> #include <algorithm> using namespace std; void binarySearch(int *number, int wanted, int strat, int stop); int main() { int number[105]; int n; while (cin>>n) { for (int i=0;i<n;i++) cin>>number[i]; sort(number,number+n); int m, wanted; cin>>m; for (int i=0;i<m;i++) { cin>>wanted; binarySearch(number, wanted, 0, n-1); cout<<endl; } } } void binarySearch(int *number, int wanted, int start, int stop) { int next = (start + stop) / 2; if (start > stop) { cout<<"error"; return ; } cout<<next<<" "<<number[next]<<" "; if (wanted > number[next]) binarySearch(number, wanted, next+1, stop); else if (wanted == number[next]) return ; else binarySearch(number, wanted, start, next-1); }

January 8, 2021 · 1 min · CPP