C++ STL容器

0
6

不定长数组:vector

vector是一个模板类,作用为创建一个不定长的数组

声明方式:vector<int>a或者vector<double>b这种类型的方式。

基本操作:若a是一个vector,则有以下操作:

  a.size( )返回数组元素的个数(数组的大小)

  a.resize( )改变大小

  a.push_back( )向尾部添加元素

  a.pop_back( )删除最后一个元素

  a.clear( )清空数组

队列:queue

队列是符合“先进先出”原则的公平队列

声明方式:queue<int>s

基本操作:

  a.push( )在队尾添加一个元素

  a.pop( )删除第一个元素

  a.front( )返回第一个元素

  a.back( )返回最后一个元素

  a.empty( )如果队列为空返回真

  a.size( )返回队列中元素的个数

栈:stack

“先进后出”

stack<int>s

基本操作:

  empty()堆栈为空则返回真

  pop()移除栈顶元素

  push()在栈顶增加元素

  size()返回栈中元素数目

  top()返回栈顶元素

优先队列:priority_queue

  包含在头文件 <queue> 中

  优先队列默认建立最大堆,如果需要建立最小堆或者对类建立堆,需要重载运算符

  priotity_queue <int, vector<int>, cmp> qu;

  基本操作:

  q.empty( ) 如果队列为空,则返回true,否则返回false

  q.size( ) 返回队列中元素的个数

  q.pop( ) 删除队首元素,但不返回其值

  q.top( ) 返回具有最高优先级的元素值,但不删除该元素

  q.push( ) 在基于优先级的适当位置插入新元素
  

<

发布回复

请输入评论!
请输入你的名字