热门关键字:
jquery > jquery教程 > html5 > STL 补档

STL 补档

290
作者:管理员
发布时间:2020/3/23 10:47:25
评论数:0
转载请自觉注明原文:http://www.jq-school.com/Show.aspx?id=1082

  STL补档

  1.vector

  作用:它能够像容器一样存放各种类型的对象,简单地说,vector是一个能够存放任意类型的动态数组,能够增加和压缩数据。

  vector在C++标准模板库中的部分内容,它是一个多功能的,能够操作多种数据结构和算法的模板类和函数库。

  它会动态申请空间,每新进来一个元素,就申请一个。申请着申请着你就MLE了(开玩笑的)。

  #include<vector>

  usingnamespacestd;

  vector<int>vec;

  vec.push_back(a);

  cout<<vec[0]<<endl;

  vector<int>::iteratorit;//使用迭代器访问元素.

  for(it=vec.begin();it!=vec.end();it++)cout<<*it<<endl;

  vec.insert(vec.begin()+i,a);//在第i+1个元素前面插入a

  vec.erase(vec.begin()+2);//删除第3个元素

  部分参考https://www.cnblogs.com/msymm/p/9006022.html感谢!!

  2.deque

  容器属性

  序列|动态数组|Allocator-aware

  序列容器的元素按严格线性排列,可按顺序访问它们的位置;

  动态数组允许直接访问其任何元素,可快速在序列首尾相对快速进行元素添加/删除;

  容器通过allocator对象动态处理存储需求

  除了写起来方便之外,时间复杂度很垃圾。。。

  迭代器相关函数:

  (publicmemberfunction)

  begin

  将迭代器返回到开头(增长方向:begin->end)

  end

  将迭代器返回到结尾

  rbegin

  返回反向迭代器以反向开始(增长方向:rbegin->rend)

  rend

  将反向迭代器返回到反向结束

  cbegin(C++11)

  将const_iterator返回到开头(与begin类似,区别在于begin指向的值可以改变,cbegin指向的值不可改变)

  cend(C++11)

  将const_iterator返回到开头末尾

  crbegin(C++11)

  返回const_reverse_iterator以反向开始

  crend(C++11)

  将const_reverse_iterator返回到反向结束





如果您觉得本文的内容对您的学习有所帮助:支付鼓励



关键字:html
友荐云推荐