STL的基本操作

2021-09-11 07:16:29 字數 1118 閱讀 9308

//預設為大根堆,即對頂是最大的

priority_queue < t > p如果需要用自定義比較函式,需要寫成:

priority_queue, cmp > q 如:小根堆 priority_queueq

q.push()

q.size()

q.top()

填坑…//集合

使用好處:刪除,查詢比陣列快

s.begin() 返回set中第乙個元素(迭代器,或者說指標)

s.end() 最後乙個的指標

s.clear() 清空

s.insert() 插入乙個元素

s.erase() 刪除乙個元素

s.size() s.max_size()

//對映

map< t1, t2> m t1 到 t2 型別的對映 ,t1 為關鍵字集合

t2 為值集合

訪問: 可以和陣列一樣訪問,也可以用insert,如果訪問的不存在,會新建乙個,值為預設

m.count() 判斷是否存在對映,m.count ( t1型別 ) 如果對映過返回 1,否則 返回 0

每個迭代器的first 對應 key, second 對應 value

clear()

for(map< t1, t2> :: iterator it = m.begin(); it != m.end; it++) 遍歷

//不定長陣列

vector < 資料型別 > vec

push.back(x) 在陣列最後方插入新元素x

size() 獲取長度

clear() 清楚全部

陣列全部用法

//堆疊:filo 先進後出

一樣的宣告

入棧:s.push(x)

出棧 :s.pop() 不返回棧頂的,只是刪除

s.empty() 判斷棧是否為空,若是,返回true

s.size()

單向佇列,先進先出

q.push(x) x到隊的末端

q.pop() 刪除隊首元素

訪問隊尾:q.back() 隊首: q.front()

判斷隊非空:q.empty() 空,則返回false

q.size()

基本STL操作

map是一種鍵值對容器。特點 鍵唯一且基本資料型別按從小到大公升序排列。使用方法如下 include 輸入輸出標頭檔案 include map標頭檔案 using namespace std 命名空間 map m 宣告乙個名為m的map int main count方式判斷元素是否存在 if m.c...

STL容器比較和基本操作

stl不同容器的優缺點 verctor vector類似於c語言中的陣列,它維護一段連續的記憶體空間,具有固定的起始位址,因而能非常方便地進行隨機訪問,即 操作符,但因為它的記憶體區域是連續的,所以在它中間插入或刪除某個元素,需要複製並移動現有的元素。此外,當被插入的記憶體空間不夠時,需要重新申請一...

STL的基本用法

map include 一一對應的對映 函式size count 判斷某元素是否出現 find 定位資料出現位置,返回的是迭代器 iterator erase iterator it 通過乙個條目物件刪除 iterator erase iterator first,iterator last 刪除乙...