一、STL提供了三种特殊的数据结构:栈、队列、优先队列
栈 :
-
头文件:
< stack > 用stack< int >s 去定义:
C++ Stack(堆栈) 是一个容器类的改编,为程序员提供了堆栈的全部功能,——也就是说实现了一个先进后出(FILO)的数据结构。。
-
符合先进后出
-
函数:
empty() 堆栈为空则返回真 pop() 移除栈顶元素 push() 在栈顶增加元素 size() 返回栈中元素数目 top() 返回栈顶元素
队列:
-
头文件:
queue 用queue< int >s定义
C++队列是一种容器适配器,它给予程序员一种先进先出(FIFO)的数据结构。
-
符合先进先出
-
函数
back() 返回最后一个元素 empty() 如果队列空则返回真 front() 返回第一个元素 pop() 删除第一个元素 push() 在末尾加入一个元素 size() 返回队列中元素的个数
优先队列
- STL的优先队列也定义在头文件< queue >里,用“priority_queue“,这个pq是一个“越小的整数优先级越低的优先队列”
- 由于出队元素并不是最先进队的元素,出队的方法由queue的front( )变为了top( )