当前位置: 首页 > news >正文

今日国内新闻最新消息10条成都网站seo报价

今日国内新闻最新消息10条,成都网站seo报价,企业网站建设项目实践报告,自助seo网站建设关于STL,我们之前浅浅提过:这里 另外对于栈,这里有更加详尽的介绍:CSTL常用数据结构1详解---栈(stack)-CSDN博客 这个系列将会更加深入地从函数原型开始用详细的例子解释用法 首先这一篇介绍的是一个非常…

关于STL,我们之前浅浅提过:这里

另外对于栈,这里有更加详尽的介绍:C++STL常用数据结构1详解---栈(stack)-CSDN博客

这个系列将会更加深入地从函数原型开始用详细的例子解释用法

首先这一篇介绍的是一个非常方便的、功能更强大的“动态数组”--vector

(有基础的朋友可以直接跳到后面看总结干货)

——————————————————————

作为STL数据结构,vector自然有自己的头文件:

#include<vector>

例:

#include<iostream>
#include<vector>
using namespace std;int n;
vector<int> v;int main()
{cin >> n;for(int i = 0; i < n; i++){int t; cin >> t;//v[i] = t;v.push_back(t);}for(int i = 0; i < n; i++)cout << v[i] << ' ';cout << endl;return 0;
}

在第6行,我们定义了一个存储int的向量v:

定义格式:vector<数据类型> 向量名(初始大小);
//初始大小以及括号可以不加

在14行,我们向这个向量里添加了元素t。push_back即把该元素添加至向量末尾。 

当然,向量与数组类似,支持随机访问。如第13行直接修改值和17行访问都是合法的。

至于更进阶的用法……

#include<iostream>
#include<vector>
using namespace std;int n, m, u, v;
vector< vector<int> > e;int main()
{cin >> n >> m;for(int i = 0; i < m; i++){cin >> u >> v; e[u].push_back(v);e[v].push_back(u);}return 0;
}

我们在这里的第六行定义了向量套向量的e来存储图(邻接表)

在main函数的for循环中,我们依次读入m条边,在u,v两个结点之间连接一条无向边。

优点与特性

这样说下来,有的朋友就要问了:

向量就这?我用数组加计数器也能实现啊!

那向量有什么特别之处吗?

欸!还真有!

细心的小伙伴可能发现了,我们在使用向量时没有设置初始大小。

这是因为,向量采用的是动态分配内存

下面是我们使用push_back和随机访问修改时的场景:

for(int i = 1; i <= 1023; i++){v.push_back(114514);cout << v.capacity() << ' ';//输出vector所占用的实际空间
}

输出:

第1次:没逝,稳得很!1的初始空间刚好能装下!

第2次:啊啊啊~~超出上限了,要长脑子了!

(容量增加到2) 总算能装下了……

第3次:c,怎么天天往里放东西啊?!好烦,干脆一次性再长两个脑子吧……(容量增加到4)

第5次:又放不下了……这次我多开一点空间,不然真的好累……

稍微卑微一点,开个两倍空间足矣!(容量增加到8)

………………

大家也能明显地发现,每当空间不够用时,vector都会申请一倍多余的空间。

所以,大家使用vector时基本可以不用担心数据存不下的问题了!

函数总集(全是干货!!!)

vector<int> v;        <---主角    
v.back()             --- 返回末项的值
v.front()            --- 返回首项的值
v.begin()            --- 返回向量首地址
v.end()              --- 返回向量末尾地址
v.clear()            --- 清空向量(注意这里只是删除元素,空间仍然会被占用!!!)
v.capacity()         --- 返回向量实际占用的空间
v.size()             --- 返回向量中元素的个数
v.empty()            --- 向量是否为空
v.push_back()        --- 向末尾添加元素
v.pop_back()         --- 弹出末尾元素    

总结

总的来说,vector虽然和它的名字(向量)没什么关系

但它可以用倍增的方式拓展存储空间,

相较于传统的数组更加灵活,不必预先设置大小……

那么今天的内容暂时先到这里

(最近在自学unity,有点忙qwq)

最后,如果你喜欢这篇文章,请给作者点个小小的免费的赞叭

球球辣~~

http://www.hkea.cn/news/914302/

相关文章:

  • linux下安装wordpress关键词优化排名查询
  • wordpress手机网站怎么做中央电视台一套广告价目表
  • 百家号如何给网站做推广推广方案是什么
  • 西安三网合一网站建设产品线上推广方案
  • 2023年免费b站入口百度网站优化
  • 响应式网站建设有利于seo网站发布与推广方案
  • 网页制作教程课件seo推广排名重要吗
  • 小规模纳税人企业所得税怎么征收广州seo招聘
  • 济南企业自助建站网络营销策划公司
  • iis 新建网站 要登录温州seo推广外包
  • 个人想做企业网站备案惠州seo代理商
  • 做公务员题的网站口红的推广软文
  • 福州网站建设 联系yanktcn 04上海百网优seo优化公司
  • 网站备案号如何获得网站建设营销推广
  • 物流网站开发公司西安 做网站
  • 商务信息网站怎么做网络视频营销策略有哪些
  • 社交做的最好的网站怎么开发一个网站
  • 教育品牌网站建设百度搜索推广和信息流推广
  • 虎门专业做网站对网络营销的认识有哪些
  • 投资理财培训网站建设抖音引流推广一个30元
  • 做景观设施的网站网络营销推广要求
  • 携程网站建设进度及实施过程网络营销的缺点及建议
  • 石家庄网站建设哪家专业中国联通腾讯
  • 能访问各种网站的浏览器百度一下网页搜索
  • 自己做网站花多少钱雅虎搜索
  • 哈尔滨招标信息网网站推广优化排名教程
  • 个人可以建论坛网站吗福清网络营销
  • 济南做网站优化价格百度推广网站一年多少钱
  • 做网上商城网站哪家好杭州seo靠谱
  • 做营销网站制作关键词优化课程