各种STL容器的使用场景

vector

比如软件历史操作记录的存储,我们经常要查看历史纪录,比如上一次的记录,上上次的记录。
相当于无限尾插,几乎不头插。vector的头插以及删除代价非常大。

deque

比如排队购票系统,对排队者的存储可以采用deque,支持头端的快速移除,尾端的快速添加。

如果采用的是vector,则头端删除时,会移动大量的数据,速度慢。

list

比如公交车乘客的存储,随时可能有乘客下v很,支持频繁的不确实位置原始的删除和插入。

set/multiset

比如对手机游戏的个人得分记录的存储,存储要求从高分到低分地顺序排列。

map/multimap

比如ID号存储十万个用户,想要快速通过ID查找对应的用户。二叉树的查找效率,这事就体现出来了。如果是vector容器,最坏的情况下可能要遍历完整个容器才能找到该用户。

相关文章:

  • 2021-09-22
  • 2021-09-13
  • 2021-05-10
  • 2021-07-02
  • 2021-07-02
  • 2021-07-10
  • 2021-07-03
  • 2022-12-23
猜你喜欢
  • 2021-11-26
  • 2021-08-21
  • 2022-12-23
  • 2021-04-04
  • 2022-12-23
相关资源
相似解决方案