栈:像死胡同一样,后进的元素先出
栈顶指针top是一个在栈顶元素上的标记,栈中没有元素,top=-1
size()表示栈内元素个数
empty()栈顶指针为top=-1时,栈就是空的
size()栈内元素个数
top()取栈顶元素
pop()把栈顶指针减一(效果一样)
push()在原来的栈顶上面再加一个元素,栈顶指针要随之加一
clear()将栈内所有元素清空,top变成-1
➠
队列:就像水龙头,先进先出
队首指针front指向队首元素前的前一个位置,队尾指针rear指向的是队尾元素的位置
clear()清空,front和rear都等于负一
size()等于rear-front
empty()front=rea
push()rear+1
pop()front+1
get_front()取front+1指向的位置
➠
vector:变长数组。
使用之前要添加#include<vector>头文件
定义vector:vector<typename>name
vector<vector<int> >(> >之间要加空格)
访问vector内的元素:
①通过下标访问
②通过更迭器访问
定义:vector<typename>::iterator it;
迭代器:循环完毕后再依次添加循环的元素
push_back()在vector后面添加一个元素
pop_back()删除vector的尾元素
size()获得vector中元素个数
clear()清空vector中元素个数
insert()insert(it,x)用来向vector的任意迭代器it处插入一个元素x
erase()
①删除单个元素
②删除一个区间内所有元素erase(first,last)
vector和数组差不多但是可以用迭代器延长