2021-10-16 集合(set)与映射(map) 恋上数据结构笔记
文章目錄
- 集合(Listset and Treeset)
- 集合時間復(fù)雜度分析
- Treeset的局限性
- 映射(Map)
- Map與Set
集合(Listset and Treeset)
概念:就是不存儲重復(fù)元素的數(shù)據(jù)結(jié)構(gòu),可以通過動態(tài)數(shù)組或鏈表以及二叉搜索樹實現(xiàn),實現(xiàn)時主要在add方法做一個判斷是否是已有元素即可,如果是重復(fù)元素,可以考慮用新的覆蓋舊的,也可以什么都不干。如果是二叉搜索樹實現(xiàn),則所有接口功能都可以由二叉搜索樹自己的函數(shù)實現(xiàn)
集合時間復(fù)雜度分析
鏈表實現(xiàn)集合:添加刪除搜索都是O(n)
紅黑樹實現(xiàn)集合:添加刪除搜索都是O(logn),效率大大提高
Treeset的局限性
雖然用鏈表或數(shù)組實現(xiàn)的listset性能比用紅黑樹實現(xiàn)的Treeset低很多,但是使用Treeset有一個前提條件,就是紅黑樹(二叉搜索樹)里加進去的元素必須具有可比較性!而鏈表或數(shù)組就沒有這種要求
映射(Map)
映射是一種數(shù)據(jù)結(jié)構(gòu),就類似現(xiàn)實生活中的字典,通過一個大寫字母A,可以找到以A開頭的一個元素。而映射就是通過Key找到一個Value,這個Key和Value都是我們自己定義的,但是注意每一個Key一定是唯一的。
而映射同樣可以通過動態(tài)數(shù)組,鏈表,二叉樹多種方式實現(xiàn),我們把Key和Key對應(yīng)的Value值一般存在同一個結(jié)點里
Map與Set
總結(jié)
以上是生活随笔為你收集整理的2021-10-16 集合(set)与映射(map) 恋上数据结构笔记的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 2021-10-15 红黑树 概念和平衡
- 下一篇: 2021-10-20 哈希表 恋上数据结