題目:給定含有n個元素的多重集合s, 每個元素在s**現的次數稱為該元素的重數。多重集s中重數最大的元素稱為眾數,如s = 。多重集s的眾數是2,其重數為3。
分析:
#include
using
namespace std;
#define m 100
int a[m]
;int num,val,n;
//重數, 眾數,個數
void
find
(int
&l,int
&r,int mid)
//找中位數的最左,最右邊界位置
void
fun(
int low,
int high)
if(i-low > num)
if(high -j > num)
}main()
-執行結果:
輸入元素個數:
6輸入元素:
1 2 2 5 3 2
1,2,2,2,3,5,
眾數:2 重數:3
--------------------------------
process exited after 11.13 seconds with return value 0
請按任意鍵繼續. .
.
分治演算法 眾數問題
problem description 給定含有n個元素的多重集合s,每個元素在s 現的次數稱為該元素的重數。多重集s中重數最大的元素稱為眾數。例如,s 多重集s的眾數是2,其重數為3。對於給定的由n 個自然數組成的多重集s,計算s的眾數及其重數。如果出現多個眾數,請輸出最小的那個。input 輸入...
眾數問題 分治演算法
給定含有n個元素的多重集合s,每個元素在s 現的次數稱為該元素的重數。多重集s中重數最大的元素稱為眾數。例如,s 多重集s的眾數是2,其重數為3。對於給定的由n 個自然數組成的多重集s,計算s的眾數及其重數。如果出現多個眾數,請輸出最小的那個。input 輸入資料的第1行是多重集s中元素個數n n ...
分治演算法 眾數問題
給定含有 n 個元素的多重集合 s,每個元素在 s 現的次數稱為該元素的重數。多重 集 s 中重數最大的元素稱為眾數。例如,s 多重集 s 的眾數是 2,其重數為 3。對於給定的由 n 個自然數組成的多重集 s,程式設計計算 s 的眾數及其重數。輸入資料由檔名為 input.txt 的文字檔案提供。...