0
点赞
收藏
分享

微信扫一扫

C++ 常见数据结构(STL)


C++ 常见数据结构(STL)


文章目录

  • C++ 常见数据结构(STL)
  • Vector
  • Stack
  • Queue
  • Hash map


Vector

头文件vector

操作

作用

vector vec

创建向量vec

vec.push_back(a)

在向量vec的尾部插入元素a

vec[i]

访问第i个元素

vec.insert(vec.begin()+i,a)

在第i个元素后面插入a

vec,eresa(vec.begin()+i)

删除第i个元素

vec.erase(vec.begin()+i,vec.end()+j)

删除区间[i,j-1];区间从0开始

vec.size()

返回向量大小

vec.clear()

清空所有向量

Stack

头文件stack

操作

作用

stack s

创建栈s

s.push(x)

将 x 入栈

s.top()

获得栈顶元素

s.pop()

弹出栈顶元素

s.empty()

检测 stack 内是否为空

s.size()

返回 stack 内元素的个数

Queue

头文件queue

操作

作用

queueq

创建栈q

q.push(x)

将x放入 queue 内

q.pop()

从 queue 中移除一个元素

q.front()

返回 queue 内的下一个元素

q.back()

返回 queue 内的最后一个元素

q.empty()

检测 queue 内是否为空

q.size()

返回 stack 内元素的个数

Hash map

头文件unordered_map

其中hashmap是无序的,其中对于获得hashmap中的一组元素时候,可以用一下代码段来访问

for (auto& x: hashmap)
    std::cout << x.first << ": " << x.second << std::endl;

操作

作用

unordered_map<int, int>hashmap

建立Hashmap

hashmap.find(x)

获得一个元素为x的迭代器

hashmap.insert(pair(int,int)(key ,value) )

插入一组元素key:value

hashmap.erase(x)

删除关于x的迭代器

hashmap.empty()

检测 hashmap 内是否为空

hashmap.size()

返回 hashmap 内元素的个数

hashmap.clear()

清空hashmap中的所有元素


举报

相关推荐

0 条评论