vector的高维数组通常利用套娃来实现。

1.一维数组

vector<T> v(...);

利用对象的函数实现对数组的动态操作(类似堆栈)。

v.push_back(...); //栈入
v.pop_back(); //栈出

利用对象的函数清空或重置数组

v.clear(); //清空, 相当于vector<T>(0)
v.assign(v.size(), 0); //重置, 相当于vector<T>(m)

2.二维数组

vector<vector<T>> v(m);
//初始化m个vector<T>类型的对象, 其中每个对象相当于vector<T>(0)

利用对象的函数实现二维数组的初始化

for(unsigned int i = 0; i < v.size(); i ++)
{v.assign(n, 0); //初始化第i+1行
}

或者

vector<vector<T>> v; //注意, 如果v(m), 则最后v.size()==2*m
vector<T> temp(n); //某行的初始化
for(int i = 0; i < m; i ++)
{v.push_back(temp); //第i+1行的初始化
}

利用对象的函数实现对数组的遍历

vector<T>::iterator it = v.begin();
while(v.end() != it)
{*it... //数组的元素...it ++; //下一个元素的地址
}
//注意, 这要求v不能有const修饰符; 否则只能依赖for来遍历。

3.高维数组

模仿二维数组层层套娃即可。
例举三维数组的初始化:

vector<vector<vector<T>>> v; //m*n*k
vector<T> temp(k);
vector<vector<T>> temp2;
for(int i = 0; i < n; i ++)
{temp2.push_back(temp); //初始化n*k
}
for(int i = 0; i < m; i ++)
{v.push_back(temp2); //m的初始化
}

注意,数组的遍历指针是数组的元素的类型而不是数组的类型。

C++之vector的高维数组相关推荐

  1. vector 容器 动态数组总结

    vector 容器 动态数组总结 二话不说直接上代码 #include <vector> #include <algorithm> #include <iostream& ...

  2. matlab 高维数组赋值,MATLAB之三(高)维数组的创建

    使用下标创建 习惯的,将二维数组的第一维称为行,第二维称为列,对于三维数组的第三维称为页.三维以及三维以上的数组称为高维数组,由于高维数组比较抽样,这里主要以三维数组为例介绍如何创建高维数组.%显示A ...

  3. numpy之高维数组的转置:transpose方法——通过几何体来迅速理解

    首先说明,这个方法是博主在理解高维数组转置的transpose 方法时所提出的,因此严谨性和正确性有待考察,但私以为完全可以这样理解,因此做个记录,如果对你有帮助的话欢迎点赞收藏,如果认为有错误的话请 ...

  4. Vector:动态数组的使用和说明

    摘自百度百科: 1. Vector 类在 java 中可以实现自动增长的对象数组; 创建了一个向量类的对象后,可以往其中随意地插入不同的类的对象,既不需顾及类型也不需预先选定向量的容量,并可方便地进行 ...

  5. Java中高维数组或高维矩阵构建及运算

    问题背景 在做实际的商务问题时,经常遇到很高维度的矩阵,针对这个问题,经常会报内存溢出. 最近找到一个fastutil包,可以高效的处理高维数组.下面主要介绍其使用方法. 创建一个二维数组 packa ...

  6. python高维数据的读取_索引访问高维数组_Python数据分析与科学计算基础篇1:NumPy图解,使抽象的数据具象为可触摸的图形_深度学习视频-51CTO学院...

    购买本课程所在专题<Python数据分析师:0基础到数据分析达人>https://edu.51cto.com/topic/2570.html,赠送一本"Python相关图书&qu ...

  7. Python | Python保存高维数组array,Python用pandas将numpy保存csv文件,Python保存3维数组

    保存一维二维数组 # x是你要保存的一维或二维数组 import pandas as pd data = pd.DataFrame(x) data.to_csv('data.csv') 或者这样保存2 ...

  8. 便利vector_你好,C++!(57)9.2 vector容器是数组的最佳替代者

    想要抢先看后面的章节?打赏本文10元,即可获得带插图全本下载地址! (打赏完成私信我) 9.2 vector容器是数组的最佳替代者 在STL尚未诞生的年代,如果要想在程序中保存和管理大量的同类型数据, ...

  9. 高维数组matlab,MATLAB 高维数组

    1 B(2,5,:)=1:3 %子数组赋值创建 数组 B(:,:,1) =0 0 0 0 0 0 0 0 0 1 B(:,:,2) = 0 0 0 0 0 0 0 0 0 2 B(:,:,3) = 0 ...

最新文章

  1. FT报源检测到目标无法恢复解决过程
  2. Outlook2013/2016去掉正文中的换行符
  3. 虚拟化--027 VMware vCenter Server Heartbeat 6.5安装教程
  4. 3月第3周中国五大顶级域名总量增5.4万 美国减31.5万
  5. CentOS 5.8 正式发布
  6. Systick滴答定时器寄存器、delay()延时函数、SysTick_Config函数
  7. linux下web压力测试工具ab使用及详解
  8. tp5 分页php不能foreach,tp5框架无刷新分页实现方法分析
  9. 【选手分享】你想知道的比赛思路这里都有!速查收!
  10. 关于ArcObjects图层编辑的读写编辑锁
  11. 【软件】HP惠普打印机能打印不能用扫描软件解决办法
  12. 微信小程序实现手机屏幕左右旋转,页面元素左右移动,小程序加速计
  13. Qt开发——网络编程UDP网络广播软件之服务器端
  14. 基于STM32设计的遥控小车(手机APP+GPS+温湿度+ESP8266)
  15. 基于MQTT协议的WZ指令开发V3.0版本支持onenet
  16. 计算机上面的字母代表什么意思,电脑主板上面的字母型号是什么意思
  17. Ubuntu16.04安装cuckoo sandbox
  18. win10电脑内存莫名过高问题解决
  19. 2022渣硕秋招复盘
  20. 图像处理(马赛克效果)

热门文章

  1. django 类视图装饰器_灵活视图处理的模式,第2部分–使用装饰器
  2. 全网最全的唐诗,让你了解唐诗。让你明白唐诗皎洁的月光洒到床前,迷离中疑是秋霜一片。仰头观看明月呵明月,低头乡思连翩呵连翩。国破山河在,城春草木深。感时花溅泪,恨别鸟惊心。烽火连三月,家书抵万金。白头搔
  3. C语言——十进制转换为二进制
  4. PC(Ubuntu)和树莓派实现无秘ssh
  5. OpenHarmony学习笔记——Hi3861使用DHT11获取温湿度
  6. 物联网基于wifi定位模型
  7. Android自定义之仿360Root大师水纹效果
  8. 乘风破浪的中国数据库 | 凌云时刻
  9. 1660s功耗多少w_非公版 1660S 首测 :GDDR6 升级 , 能打大哥 1660Ti
  10. 第 46 届 ICPC 国际大学生程序设计竞赛亚洲区域赛(上海)(热身赛(A/B) + 正式赛(D/E))