【問題】
請編寫下面函式 int majorityelement(int array,int n);
該函式返回陣列array中的多數元素。多數元素是指在佔絕對多數(至少51%)的乙個值。假設多數元素不存在。那麼返回常量nomajorityelement,該函式必須滿足以下的條件:
1. 必須以o(n)時間執行。
2. 必須使用o(1)的附加空間。換句話說,可用個別的暫時變數,而不能夠使用不論什麼的暫時陣列。
而且不能使用遞迴解決,這是由於隨著遞迴層數加深,會須要空間來儲存棧幀。
3. 不能改變陣列中的不論什麼元素的值。
【**】
#include void majorityelement(int array, int n)
else
}else
} if(count > 0)
printf("majorityelement: %d\n", majority);
else
printf("nomajorityelement\n");
}main()
; majorityelement(array, 5);
}
《C程式設計的抽象思維》1 9程式設計練習
1 溫度轉換 includeint main 2 長度轉換 includeint main return0 3 計算1 2 3 100 includeint main 4 計算序列值 includeint main 5 按照指定格式輸入乙個整數序列中的最大值 includeint main prin...
《C程式設計的抽象思維》1 9程式設計練習
1 溫度轉換 includeint main 2 長度轉換 includeint main return 0 3 計算1 2 3 100 includeint main 4 計算序列值 includeint main 5 按照指定格式輸入乙個整數序列中的最大值 includeint main pri...
《C程式設計的抽象思維》2 10程式設計練習(未完)
2 按照規定求圓柱的表面積和體積 include include include define pi 3.1415926 void input double r,double h void count double r,double h,double s,double v void output d...