1. 程式人生 > 其它 >刷題筆記:雜湊表的三種容器

刷題筆記:雜湊表的三種容器

當需要進行查詢速度優化時,就可以使用雜湊表,需要使用額外的空間儲存資料,隨後可以提高查詢效率。

常用的雜湊表資料結構有三種:陣列、集合(set)、對映(map)。

當資料量小時陣列也可以有雜湊功能:

例如統計字串中字母出現次數,可以使用 s[0]~s[25] 的陣列分別儲存字母數量。

單當資料量無法確定或較大時,就需要使用集合(set)了。

集合有三類:

首先考慮使用unordered_set,它具有資料唯一性,無序的特點。

當要求有序時,就可以使用set。它具有資料唯一性,有序的特點。

當要求有序且可重複時,就可以使用multiset,它具有可重複性,有序的特點。

當資料有 key 和 value 對應關係時,就可以使用對映(map)。

對映同樣有三種:

首先是unordered_map,它具有 key 唯一性,無序的特點。

而map,具有 key 唯一性,有序的特點。

multimap,則是具有 key 可重複性,有序的特點。