C語言 尋找資料中的眾數

2021-08-18 09:57:55 字數 633 閱讀 4211

室友暢的c語言作業。

基本思路:a用來存放資料,b用來存放a中每個資料的出現次數,注意當乙個資料出現多次時,只有第一次出現時對應的b是次數,剩下的都是1。這樣減少判斷次數。num記錄眾數的出現次數,flag記錄眾數的出現位置。考慮到多個眾數的情況,引入c,記錄與眾數出現次數相同的次數的資料。

源**如下:

#include

#define n 8

int a[n+1],b[n+1],c[n+1];

int i,j;

int num,flag;

int main()

num = b[0];

for (i = 0; i < n; i++)

}for (i = 0; i < n; i++)

c[i] = 0;

c[flag] = a[flag];

for (i = 0; i < n; i++)

printf("mode is:");

for (i = 0; i < n; i++)

if (c[i]!=0)

printf("%d&",c[i]);

printf("\b \n");

return

0;}

尋找陣列中的眾數

源 include include includeint main z 0 利用rand函式產生乙個隨機數組 srand unsigned time null for int i 0 i 100 i 找出眾數的思想是 先排序,然後找出那個重複最多的數,那個數就是眾數了 先利用氣泡排序法對陣列進行排序...

C語言(23)眾數問題

描述 所謂眾數,就是對於給定的含有n個元素的多重集合,每個元素在s中出現次數最多的成為該元素的重數,多重集合s重的重數最大的元素成為眾數。例如 s 則多重集s的眾數是2,其重數為3。現在你的任務是 對於給定的由m個自然數組成的多重集s,計算出s的眾數及其重數。輸入第一行為n,表示測試資料組數。n 3...

c語言峰值演算法 C語言尋找一組資料中的第一第二峰值

c語言尋找一組資料中的第一第二峰值 實驗要求,我需要找出一組陣列中的兩個峰值 第乙個峰值和第二個峰值及其陣列下標。這組資料畫出的圖應該是這樣的,我就要找出圖中的那兩個峰值 我寫的程式如下,我試了一下,這樣找出的資料是不對的。比如有的資料會找出這樣的數 隔得太近了,肯定不是 有的會找出這樣的數 所以,...