天天看點

C# HashSet<T>類中增、删、清除方法(Add、Remove、Clear)執行個體解析

本文部分注釋來源于書籍和網摘

散清單(Hash table,也叫哈希表),是根據關鍵字(Key value)而直接通路在記憶體存儲位置的資料結構。

它通過計算一個關于鍵值的函數,将所需查詢的資料映射到表中一個位置來通路記錄,

也就是說,哈希查表存儲資料時就是使用映射函數将鍵映射成索引,這加快了查找速度。

這種映射函數稱作散列函數(也就是哈希函數);存放記錄的數組稱做散清單。

我們知道如果哈希函數選擇不當會使得大量的鍵都會映射到相同的索引上,不管是采用拉鍊法還是開放尋址法解決沖突,在後面查找的時候都需要進行多次探測或者查找, 在很多時候會使得哈希表的查找效率退化。

是以在實際工作中,我們往往需要實作自己的哈希函數。

 HashSet<T>類專為集合操作優化,包括判斷資料項是否集合成員、生成合并集、交集等。

Add方法:将元素插入HashSet<T>集合。

 Remove方法:移除HashSet<T>集合中指定的元素。

 Clear方法:從 HashSet<T> 對象中移除所有元素。

C# HashSet&lt;T&gt;類中增、删、清除方法(Add、Remove、Clear)執行個體解析