標籤:插入 高效能 為我 長度 ima ble 動態數組 html cti
java中的資料結構 - 南風顧 - 部落格園
http://www.cnblogs.com/tingxuelou/p/6686143.html
線性表,鏈表,雜湊表是常用的資料結構,在進行Java開發時,JDK已經為我們提供了一系列相應的類來實現基本的資料結構。
Java工具包提供了強大的資料結構。在Java中的資料結構主要包括以下幾種介面和類:
1.枚舉(Enumeration):枚舉(The Enumeration)介面定義了一種從資料結構中取回連續元素的方式。它還是使用在諸如Vector和Properties這些傳統類所定義的方法中
2.位集合(BitSet)3.向量(Vector)4.棧(Stack)
5.字典(Dictionary)
6.雜湊表(Hashtable)
7.屬性(Properties)
以上這些都是傳統的集合架構,雖然這些類都非常有用,但是它們缺少一個核心的,統一的主題。由於這個原因,使用Vector類的方式和使用Properties類的方式有著很大不同。
集合架構被設計成要滿足以下幾個目標。
- 該架構必須是高效能的。基本集合(動態數組,鏈表,樹,雜湊表)的實現也必須是高效的。
- 該架構允許不同類型的集合,以類似的方式工作,具有高度的互通性。
- 對一個集合的擴充和適應必須是簡單的。
為此,整個集合架構就圍繞一組標準介面而設計。你可以直接使用這些介面的標準實現,諸如: LinkedList, HashSet, 和 TreeSet等,除此之外你也可以通過這些介面實現自己的集合。
集合架構是一個用來代表和操縱集合的統一架構。所有的集合架構都包含如下內
1.list是儲存有序的集合,Set是儲存無序的集合,儲存不重複的資料。
2.sortedset繼承於set介面,用來儲存有序的集合。
3.map將唯一的鍵映射到值。
4.map.entry描述在一個map中的一個元素
Set和List的區別:set是無序的集合,list是有序的集合,使用此介面能夠精確的控制被個元素插入的位置,能夠偶通過索引的位置來精確地訪問元素
Set檢索效率低下,刪除和插入效率高,插入和刪除不會引起元素位置改變
List和數組類似,可以動態增長,根據實際儲存的資料的長度自動成長List的長度。尋找元素效率高,插入刪除效率低,因為會引起其他元素位置改變
(3)java資料結構--