iT邦幫忙

1

C# hashset 如何使用

c#
  • 分享至 

  • xImage

網路上查到的解說都是翻譯過來的 , 講得很生硬聽不太懂
可否白話說明如何使用 , 這樣比較容易了解 , 謝謝

看更多先前的討論...收起先前的討論...
weiclin iT邦高手 4 級 ‧ 2018-11-10 01:33:10 檢舉
這篇超清楚的:
https://stackoverflow.com/questions/4558754/define-what-is-a-hashset
都說英文看沒了…
小魚 iT邦大師 1 級 ‧ 2018-11-10 08:02:12 檢舉
英文看沒不要學程式就好了啊...
mhliu8 iT邦新手 5 級 ‧ 2021-04-30 12:33:11 檢舉
人家對岸都不厭其煩翻譯了, 不管是硬翻或是機器翻都很多人做 無所不用其極傳播知識, 台灣人還在內鬥
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中
1
sam0407
iT邦大師 1 級 ‧ 2018-11-10 09:24:33

我的理解是把HashSet想成Collection,但不能排序,也不會包含重複的值

0
jacky19918
iT邦新手 5 級 ‧ 2018-11-10 13:18:22

HashSet就是一個集合,相同的裡面的物件如果hash相同只會存在一個
你可以想想看你每個Instance都有一個hash
你可以對任何object使用GetHashCode()去看
例如你在這集合內增加兩個5

var set = new HashSet<int>();
set.Add(5);
set.Add(5);

此時你set裡面只會有一個5

因為5的hash都是一樣的

var hash = 5.GetHashCode();

//刪除剛剛的出題,還是不要講太深好了
題外話:學程式真的不能不看英文,加油

0
mhliu8
iT邦新手 5 級 ‧ 2021-04-30 12:29:30

重點是 hashset 使用 hash (哈希, 散列, 雜湊) code 來算出一個唯一值很像亂數的當 index, 在新增刪除時, 系統只要認 hash code 就很快速能找到了.

我要發表回答

立即登入回答