赞
踩
1、向量vector用法
1.1 Vector的存储空间是连续的,List不是连续存储的。
定义初始化:
- vector<type> v //默认v为空,即v[0]=5是错误的;
- vector<type> v1(v) 或者v1=v或者vector<type> v1(v.begin(),v.end());
- vector<type> v(n,i) v中包括n个值为i的type类型的值
- vector<type> v(n,0) v中包括n个值为0的type类型的值
1.2 vector的几种操作
- v.push_back(t) 扩充容器的size
- 另外list有push_front()函数,在前端插入,后序的元素下标依次增大
- v.size() 返回容器中数据的个数
- v.empty()判空
- v.insert(pointer,number,content) 向v中pointer的位置处插入number个content,也可以是v.insert(pointer,content)
- v.pop-back()删除容器中的末元素,并不返回该元素
- v.erase(pointer1,pointer2)删除pointer1到pointer2中间的元素(包含pointer1所指的)
- vector<int>::iterator p=v.begin(),p初始值指向v的第一个元素,*p是取所指元素的值。
- v.clear()清空向量
#include<algorithm>中泛函算法
- 搜索算法:find(),search(),count(),find_if(),search_if(),count_if()
- 分类排序:sort(),merge()
- 删除算法:unique(),remove()
2 堆栈的Stack的用法
- Stack初始化和vector比较类似
- stack<type> s
- stack的基本操作:
- 入栈:s.push(x)
- 出栈:s.pop()只是删除栈顶元素,但并不返回该元素
- 访问栈顶:s.top()
- 判空:s.empty()
- 访问栈中元素的个数:s.size()
3 队列queue的用法
- queue队列初始化与vector以及stack一样
- queue<int> q
- 入队:q.push()
- 出队:q.pop()将首个元素取出去,并且没有返回值
- q.size()队列类型数的数量
- q.empty()判空
- q.front()返回队列第一个元素
- q.back()返回队列最后一个元素
4 C++原带的stl中二分法函数equal_range(),应用于排列好的列表或者数组
equal_range(vector.begin(),vector.end(),value)
其返回指向输入序列中所有值等于val的元素所组成的子序列的起始及末尾位置。
赞
踩
赞
踩
赞
踩
赞
踩
赞
踩
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。