C++ STL

vector,变长数组

vector<int> s;
s.size()					返回元素个数 
s.empty()					返回是否为空 
s.clear()					清空 	
s.front()/back() 				返回头/尾元素 
s.push_back()/pop_back()		从尾部插入元素/删除尾部元素 
s.begin()/end() 				返回头部的下标/返回尾部的下标的+1

map,关联容器

以键值对存储的数据,其类型可以自己定义,每个关键字在map中只能出现一次,关键字不能修改,值可以修改。map内部有序(自动排序,单词时按照字母序排序),查找时间复杂度为 O(logn)。

map<string,int> my_map;

my_map[1] = "小明";
my_map[2] =  "小芳";
my_map[3] = "小森";

my_map.find()					返回查找元素的迭代器
my_map.clear()				清空
my_insert()						插入一个元素 (pair)
my_map.erase()				删除一个元素
		输入的是一个数(pair),删除(pair)
		输入的是一个迭代器,删除这个迭代器
my_map.size()				返回map的长度大小
my_map.begin()/end()		返回指向map头部/末尾元素的下一位置的迭代器
my_map.empty()				判断是否为空

遍历:
map<string, int>::iterator iter;
for(iter = my_map.begin();iter!=my_map.end();iter++)
	cout << iter->first << ' ' << iter->second << endl;

pair:
pair是将2个数据组合成一组数据,当需要这样的需求时就可以使用pair,如stl中的map就是将key和value放在一起来保存。另一个应用是,当一个函数需要返回2个数据的时候,可以选择pair。 pair的实现是一个结构体。

类模板:template<class T1,class T2> struct pair

参数:T1是第一个值的数据类型,T2是第二个值的数据类型。

功能:pair将一对值(T1和T2)组合成一个值,

    这一对值可以具有不同的数据类型(T1和T2),

    两个值可以分别用pair的两个公有函数first和second访问。

unordered_map

同map,内部无序

stack,栈

	size()	返回元素个数  
	empty()	返回是否为空
	push() 向栈顶 插入一个元素
	top() 返回栈顶元素
	pop() 弹出栈顶元素

queue,队列

	size()	返回元素个数 
	empty()	返回是否为空
	push() 向队尾插入一个元素
	front() 返回队头元素
	back() 返回队尾元素
	pop() 弹出队头元素
	清空:q=queue<int>();
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值