stl 的容器總結

2021-07-29 19:31:35 字數 1298 閱讀 1279

優先佇列簡單容器

stack 棧

queue 佇列

deque 雙端佇列

priority_queue優先佇列

list 鍊錶

vector 向量

map對映

set 幾何

stack 先進後出

queue

先進先出

這是兩個最基礎的容器具體的操作只有

push pop

size empty

deque 彌補了兩者進出只有只有乙個埠的缺點。和雙向鍊錶差不多可以新增頭也可以新增尾部

list 真正的鍊錶了。這裡也是雙向鍊錶。

如果你想實現單向鍊錶只要在操作的時候乙個埠進乙個埠出就好

list 的優勢在於插入的和刪除的操作只需要

o(1)

就可以完成

insert(pos,num)在

pos位置新增

num元素

erase(pos)刪除

pos位置的元素

push_front()

push_back()

pop_front()

pop_back()

begin()返回的是首元素的位置

size返回的是容器的大小

end()返回的是容器的尾部元素位置的位置+1

vector 只能從後邊推入

push_back()

push_front()

同樣可以進行 insert(pos,num)在

pos位置新增

num元素

erase(pos)刪除

pos位置的元素 不過時間複雜度是

o(n)

find(pos1,pos2,t)查詢t

優先佇列最需要注意的就是他的cmp

優先佇列不再是乙個函式而是乙個物件

在定義他的cmp的時候我們不能使用簡單的函式封裝而是用結構體或者類進行封裝

優先佇列寫的時候可以將比較函式直接寫在結構體以內。。

或者另外定義乙個結構體用來宣告比較級

不過優先佇列宣告的時候需要新增

還有如果不是結構體封裝的容器變數

可以直接呼叫greater和

less函式

set也是

map只是簡單的對映沒什麼好說的了。。

low_bound(pos1,pos2,toor)在位址1到

2之間找第乙個比

toor

大的數的位址

eg:找陣列中的位置

num代表陣列的首位置的指標

hrbust 1598

STL容器總結

一.種類 值得注意的是,陣列可以和 stl演算法配合,因為指標可以當作陣列的迭代器使用。二.刪除元素 如果想刪除東西,記住 remove 演算法後,要加上 erase 所謂刪除演算法,最終還是要呼叫成員函式去刪除某個元素,但是因為 remove 並不知道它現在作用於哪個容器,所以 remove 演算...

STL容器總結

stl 豆瓣 stl模板類總結 友朋小盧 友朋小盧 2012 09 19 00 19 29 一 vector模板類 1 包含在標頭檔案vector中,內部機理是使用動態記憶體分配。2 如何定義vector類 vectorstr 5 vector vector int n 3 操作賦被過載,所以可以這...

stl容器簡單總結

標準容器類 說明順序性容器 vector 從後面快速的插入與刪除,直接訪問任何元素 deque 從前面或後面快速的插入與刪除,直接訪問任何元素 list 雙鏈表,從任何地方快速插入與刪除 關聯容器 set快速查詢,不允許重複值 multiset 快速查詢,允許重複值 map一對多對映,基於關鍵字快速...