STL 簡單整理

2021-07-03 06:12:42 字數 3581 閱讀 7953

stl

#include

multisetnum;             //定義

multiset::iterator it; //迭代器

num.insert(b); //插入

num.erase(num.find(b)); //刪除(查詢)

num.erasr(pos); //pos位資料

num.erasr(beg,end); //區間刪除

num.count(b); //計數

num.empty(); //判空

for(it=num.begin();it!=num.end();it++)

cout<

#include

stack num;

num.push(number);

num.top();

num.pop();

num.empty();

num.size();

#include

queuenum;

priority_queueq1; //優先佇列從大到小

priority_queue, greater> q2;//優先佇列從小到大

num.front(); //返回佇列頭部資料

num.back(); //返回佇列尾部資料

num.push(data); //尾部入隊資料

num.pop(); //頭部資料出兌

num.empty(); //判空

num.size(); //佇列大小

兩種自定義方式:

begin()          //返回指向map頭部的迭代器

clear()//刪除所有元素

count() //返回指定元素出現的次數

empty() //如果map為空則返回true

end() //返回指向map末尾的迭代器

equal_range() //返回特殊條目的迭代器對

erase() //刪除乙個元素

find() // 查詢乙個元素

get_allocator() //返回map的配置器

insert() //插入元素

key_comp() //返回比較元素key的函式

lower_bound() //返回鍵值》=給定元素的第乙個位置

max_size() //返回可以容納的最大元素個數

rbegin() //返回乙個指向map尾部的逆向迭代器

rend() //返回乙個指向map頭部的逆向迭代器

size() //返回map中元素的個數

swap() //交換兩個map

upper_bound() //返回鍵值》給定元素的第乙個位置

value_comp() //返回比較元素value的函式

1. map最基本的建構函式;

mapmapstring;         mapmapint;

mapmapstring;         map< char ,string>mapchar;

mapmapchar;            mapmapint;

2. map新增資料;

mapmaplive;  

1.maplive.insert(pair(102,"aclive"));

2.maplive.insert(map::value_type(321,"hai"));

3, maplive[112]="april";//map中最簡單最常用的插入新增!

3,map中元素的查詢:

find()函式返回乙個迭代器指向鍵值為key的元素,如果沒找到就返回指向map尾部的迭代器。        

map::iterator l_it;; 

l_it=maplive.find(112);

if(l_it==maplive.end())

cout<

4,map中元素的刪除:

如果刪除112;

map::iterator l_it;;

l_it=maplive.find(112);

if(l_it==maplive.end())

cout<

5,map中 swap的用法:

map中的swap不是乙個容器中的元素交換,而是兩個容器交換;

for example:

#include #include using namespace std;

int main( )

6.map的sort問題:

map中的元素是自動按key公升序排序,所以不能對map用sort函式:

for example:

#include #include using namespace std;

int main( )

{ map m1;

map ::iterator m1_iter;

m1.insert ( pair ( 1, 20 ) );

m1.insert ( pair ( 4, 40 ) );

m1.insert ( pair ( 3, 60 ) );

m1.insert ( pair ( 2, 50 ) );

m1.insert ( pair ( 6, 40 ) );

m1.insert ( pair ( 7, 30 ) );

cout << "the original map m1 is:"

the original map m1 is:

1 20

2 50

3 60

4 40

6 40

7 30

請按任意鍵繼續. . .

STL 整理唱片

problem g stl 整理唱片time limit 1 sec memory limit 128 mbsubmit 6303 solved 1778 submit status description小明有乙個書架,但是他卻用它放了許多唱片。但是他的習慣很不好,唱片胡亂擺放。於是他決定整理一下...

STL函式整理

unique函式 這是乙個去重函式,去除相鄰元素的重複元素,由於是相鄰元素,因此使用前一般要對元素進行排序 排序可以用到sort函式 這裡的 去除 並不是將元素刪除掉,而是後面不重複的元素向前移動,將重複元素覆蓋。例如數字 1 3 3,4,5,6 6 7 經過去重之後變為1,3,4,5,6,7,6,...

常用 STL 整理

vector 可變長陣列,變長是基於倍增的思想 系統為某乙個程式分配空間時,有乙個特點,他所需的時間基本上與空間大小無關,只與申請次數有關 即 100 和 1000 沒區別,只和請求次數有關 因此,vector的優化目標是,減少申請的次數 優化時間,可以浪費空間 起初先申請乙個 小的空間 例如32 ...