栈、队列、优先队列

一、STL提供了三种特殊的数据结构:栈、队列、优先队列

栈 :

  1. 头文件:
    < stack > 用stack< int >s 去定义:

    C++ Stack(堆栈) 是一个容器类的改编,为程序员提供了堆栈的全部功能,——也就是说实现了一个先进后出(FILO)的数据结构。。

  2. 符合先进后出
  3. 函数:
    empty() 堆栈为空则返回真
    pop() 移除栈顶元素
    push() 在栈顶增加元素
    size() 返回栈中元素数目
    top() 返回栈顶元素

队列:

  1. 头文件:

    queue 用queue< int >s定义

    C++队列是一种容器适配器,它给予程序员一种先进先出(FIFO)的数据结构。

  2. 符合先进先出

  3. 函数

    back() 返回最后一个元素
    empty() 如果队列空则返回真
    front() 返回第一个元素
    pop() 删除第一个元素
    push() 在末尾加入一个元素
    size() 返回队列中元素的个数

优先队列

  1. STL的优先队列也定义在头文件< queue >里,用“priority_queue“,这个pq是一个“越小的整数优先级越低的优先队列”
  2. 由于出队元素并不是最先进队的元素,出队的方法由queue的front( )变为了top( )

你可能感兴趣的:(c++,数据结构,队列,堆栈,栈)