設計思想:
遍歷一遍id列表,進行兩兩比較
如兩個id不同就都刪掉
如果相同,出現這個id的次數加一
水王的帖子超過一半,遍歷到最後剩下的只有水王的id
實現資料 :
截圖:
**實現:
#include
using namespace std;
int find(int* id, int n)
else
else
ntimes--;}}
return idk;
}int main()
;int idk = find(ids, 12);
cout << "水王是 " << idk << endl;
system("pause");
return 0;
}個人總結:
對於尋找出現次數最多的題目,可以通過兩兩比較來找到最多的。重要的是迴圈體的使用,找到迴圈體中需要實現的目的是什麼。
個人專案找水王
一 題目要求 二 設計思想 水王問題就是根據消消樂遊戲的乙個變形,消消樂是消除相同的圖案,而找出水王則是刪掉相鄰的不同的id,由於 水王 發帖數目超過了帖子數目的一半,這樣剩下的id一定是水王的id。這樣就滿足了時間複雜度為o n 的要求。三 程式 includevoid main 假設的id號 i...
個人專案 找水王續
一 程式要求 三人行設計了乙個灌水論壇。資訊學院的學生都喜歡在上面交流灌水,傳說在論壇上有乙個 水王 他不但喜歡發帖,還會回覆其他id發的每個帖子。坊間風聞該 水王 發帖數目超過了帖子數目的一半。隨著論壇的發展,管理員發現水王沒有了,但是統計結果表明,有三個發帖很多的id。據統計他們的發帖數目都超過...
找水王問題
設計思路 起初看到這道題第乙個想法就是先排序再找出最中間乙個id,但是老師要求時間複雜度是o n 所以這個思路被放棄。高長志同學提出了另一種思路。由於水王的id出現的次數佔總數的一半,所以從頭遍歷一遍,先存入第乙個id,依次與後面的id比較,遇到相同的id,計數器加1 遇到不同的id,計數器減1,當...