摘要:本文列出幾個基本的stl map和stl set的問題,通過解答這些問題講解了stl關聯容器內部的資料結構,最後提出了關於unix/linux自帶平衡二叉樹庫函式和map, set選擇問題,並分析了map, set的優勢之處。對於希望深入學習stl和希望了解stl map等關聯容器底層資料結構的朋友來說,有一定的參考價值。
vector(向量)——stl中標準而安全的陣列。只能在vector 的「前面」增加資料。
deque(雙端佇列double-ended queue)——在功能上和vector相似,但是可以在前後兩端向其中新增資料。
list(列表)——游標一次只可以移動一步。如果你對鍊錶已經很熟悉,那麼stl中的list則是乙個雙向鍊錶(每個節點有指向前驅和指向後繼的兩個指標)。
set(集合)——包含了經過排序了的資料,這些資料的值(value)必須是唯一的。
map (對映)——經過排序了的二元組的集合,map中的每個元素都是由兩個值組成,其中的key(鍵值,乙個map中的鍵值必須是唯一的)是在排序或搜尋時使用,它的值可以在容器中重新獲取;而另乙個值是該元素關聯的數值。比如,除了可以ar[43] = "overripe"這樣找到乙個資料,map還可以通過ar["banana"] = "overripe"這樣的方法找到乙個資料。如果你想獲得其中的元素資訊,通過輸入元素的全名就可以輕鬆實現。
multiset(多重集)——和集合(set)相似,然而其中的值不要求必須是唯一的(即可以有重複)。
multimap(多重對映)——和對映(map)相似,然而其中的鍵值不要求必須是唯一的(即可以有重複)。
Oracle 基本知識
乙個表空間只能屬於乙個資料庫 每個資料庫最少有乙個控制檔案 建議3個,分別放在不同的磁碟上 每個資料庫最少有乙個表空間 system表空間 建立system表空間的目的是盡量將目的相同的表存放在一起,以提高使用效率,只應存放資料字典 每個資料庫最少有兩個聯機日誌組,每組最少乙個聯機日誌檔案 乙個資料...
Oracle 基本知識
乙個表空間只能屬於乙個資料庫 每個資料庫最少有乙個控制檔案 建議3個,分別放在不同的磁碟上 每個資料庫最少有乙個表空間 system表空間 建立system表空間的目的是盡量將目的相同的表存放在一起,以提高使用效率 每個資料庫最少有兩個聯機日誌檔案 乙個資料檔案只能屬於乙個表空間 乙個資料檔案一旦被...
Oracle 基本知識
oracle 文章摘要 oracle 基本知識。正文 oracle 基本知識 乙個表空間只能屬於乙個資料庫 每個資料庫最少有乙個控制檔案 建議3個,分別放在不同的磁碟上 每個資料庫最少有乙個表空間 system表空間 建立system表空間的目的是盡量將目的相同的表存放在一起,以提高使用效率 每個資...