樹集(treeset)和樹狀圖(treemap)的區別
數組用於存儲一組相同類型的數據元素。大多數編程語言都支持數組。即使一個數組可以存儲多個值,它也有一個主要的缺點。數組一旦創建,就不可能更改它。如果程序員聲明瞭一個由10個元素組成的數組,那麼他就不能存儲15個元素。當程序員聲明一個由10個元素組成的數組並且只存儲5個元素時,剩餘的分配內存是浪費。Java等編程語言具有動態存儲數據元素的集合。有很多收藏。集合有助於執行添加、刪除元素和其他操作。基本接口稱為集合。Set、List和Queue是一些擴展集合接口的接口。Map是集合層次結構的接口,但它不擴展集合接口。TreeSet是一個實現Set接口並按升序存儲元素的類。TreeMap是一個實現映射接口並按升序存儲鍵、值對的類。這就是關鍵的區別。本文討論TreeSet和TreeMap之間的區別。
目錄
1. 概述和主要區別
2. 什麼是樹集
3. 什麼是TreeMap
4. TreeSet與TreeMap的相似性
5. 並列比較-樹形圖與樹形圖
6.摘要
什麼是樹集(treeset)?
TreeSet是一個實現Set接口的類。樹集維護獨特的元素。TreeSet實現NavigableSet接口。可導航接口按層次順序擴展SortedSet、Set、Collection和Iterable接口。TreeSet按升序存儲元素。如果**的順序是A,C,B,TreeSet將它們存儲為A,B,C。add方法用於向集合中添加元素。remove方法用於刪除指定的元素。clear方法用於刪除所有元素。如果集合中存在指定的元素,contains方法將返回true。它們是TreeSet提供的一些方法。參考以下程序。
根據上面的程序,Treeset是Treeset類型的對象。它可以存儲字符串。元素是使用add方法添加的。**順序是A、C、D和B。使用迭代器,存儲的值被打印到屏幕上。元素按A、B、C、D的順序存儲。因此,樹集保持集合元素的升序。如果有另一個元素作為“D”,它將不會打印,因為元素D已經存在於集合中。它總是存儲獨特的元素。
什麼是樹狀圖(treemap)?
TreeMap是一個實現Map接口的類。映射支持鍵值對。每個鍵、值對都是一個條目。每個鍵都是唯一的,並且有一個對應的值。containsKey方法用於查找特定鍵,而containsValue方法用於查找特定值。get方法用於查找與給定鍵對應的值。put方法用於存儲具有給定鍵的值。也可以使用remove方法刪除特定鍵處的元素。這些是一些常見的地圖接口方法。它有助於根據鍵搜索、**和刪除元素。TreeMap類實現NavigableMap。NavigableMap擴展了SortedMap。SortedMap擴展地圖。因此,Map方法可以與TreeMap一起使用。參考以下程序。
根據上述程序,創建了TreeMap對象。程序員可以使用對象添加元素。put方法用於**鍵、值對。get方法與特定的鍵一起使用以獲取元素。程序員可以使用地圖。入口打印所有鍵和值。觀察輸出時,它不會保持**順序。它按升序存儲元素。
樹集(treeset)和樹狀圖(treemap)的共同點
- TreeSet和TreeMap都在集合層次結構中。
- TreeSet和TreeMap都保持升序。
- TreeSet和TreeMap都可以存儲和操作許多元素。
樹集(treeset)和樹狀圖(treemap)的區別
樹集與樹圖 | |
TreeSet是一個實現Set接口並按升序存儲元素的類。 | TreeMap是一個實現映射接口並按升序存儲鍵、值對的類。 |
實現的接口 | |
TreeSet實現Set接口。 | TreeMap實現映射接口。 |
總結 - 樹集(treeset) vs. 樹狀圖(treemap)
數組用於存儲一組元素,但它對動態存儲元素沒有幫助。Java等編程語言包含動態存儲數據元素的集合。Collection是集合層次結構中的基類。它由類和接口組成,用於執行添加、刪除元素等操作。集合和映射是集合層次結構的兩個接口。TreeSet是一個實現Set接口並按升序存儲元素的類。TreeMap是一個實現映射接口並按升序存儲鍵、值對的類。這就是TreeSet和TreeMap之間的區別。