string对象
栈stack
头文件 #include
定义 stack <data_type> stack_name
如 stack s;
操作:
empty() 返回bool,表示栈内是否为空 s.empty()
size() 返回栈内元素的个数 s.size()
top() 返回栈顶元素值 s.top()
pop() 移除栈顶元素 s.pop()
push(data_type a) 向栈内压入一个元素 s.push(a)
队列queue
头文件 #include
定义 queue <data_type> queue_name
如 queue q;
操作:
empty() 返回bool型,表示queue是否为空 q.empty()
size() 返回queue内元素的个数 q.size()
front() 返回queue内的下一个元素 q.front() 队头
back() 返回queue内的最后一个元素 q.back() 队尾
pop() 移除queue中的一个元素 q.pop()
push(data_type a) 将一个元素a置入queue中 q.push(a)
vector动态数组
头文件 #include
定义 vector <data_type> vector_name
如 vector v
操作:
empty() 返回bool型,表示vector是否为空 v.empty()
siez() 返回vector内元素个数 v.size()
push_back(data_type a) 将元素a插入最尾端
pop_back() 将最尾端元素删除
v[i] 类似数组取第i个位置的元素 (v[0])
优先队列 (priority_queue)
一个拥有权值观念的queue,自动依照元素的权值排列,权值最高排在前面。缺省情况下,priority_queue是利用一个max_heap完成的
头文件 #include
定义 poriority_queue <data_type> priority_queue_name
如 priority_queue q //默认是大顶堆
操作
q.push(elem) 将元素 elem置入优先队列
q.top() 返回优先队列的下一个元素
q.pop 移除一个元素
q.size() 返回队列中元素的个数
q.empty() 返回优先队列是否为空