[問題] 如何將陣列中重複的值刪掉,只列出不重複的值呢?

看板C_Sharp作者 (Still Ballin)時間18年前 (2007/12/24 01:58), 編輯推噓2(206)
留言8則, 3人參與, 最新討論串1/1
我剛學c#沒有很久,有一個題目想請教 假如設定有陣列資料如下 int[] data={1,1,2,2,3,3,4,4,5,5,6,6}; 我想要統計以上有那些數字重複,重複的次數為何 然後把重複的資料刪掉重新列出資料 比如說:重複的資料有1,次數2次...... 該陣列的數字為(1,2,3,4,5,6) int i,j, sum=0; int[] Data ={ 1,1,2,2,3,3,4,4,5,5 }; for (i=0; i <= 9; i++) { for ( j = i; j <= 9; j++) { if (Data[i] == Data[j]) { sum += 1; } Console.WriteLine("重複的值為{0},重複{1}次", Data[i], sum); } } Console.ReadLine(); 但是這樣寫出來sum為一直累積下去,沒有辦法辨別是那一個數字重複幾次? 已經想破頭了,但還是想不出來... -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 220.131.108.236

12/24 01:59, , 1F
記得資料結構的bucket嗎?
12/24 01:59, 1F

12/24 02:00, , 2F
另外sum不一定要是加總全部喔
12/24 02:00, 2F

12/24 06:25, , 3F
sum=0 放在外層回圈最上面 WriteLine放在外層回圈最
12/24 06:25, 3F

12/24 06:27, , 4F
下面
12/24 06:27, 4F

12/24 11:48, , 5F
天呀,我怎麼沒有想到把sum=0加進去...太謝謝你們了!!
12/24 11:48, 5F

12/24 11:49, , 6F
還有謝謝li大大的提示,不過bucket我還沒有學到>"<
12/24 11:49, 6F

12/24 11:49, , 7F
我會去查看看相關的資料的,然後再寫一次,程式真好玩!
12/24 11:49, 7F

12/24 21:46, , 8F
噗 很久沒看到 "程式真好玩" 這樣的話了 加油啊 有前途
12/24 21:46, 8F
文章代碼(AID): #17Rg6rIw (C_Sharp)