c++向量和数组的区别 | 您所在的位置:网站首页 › 数列数组区别是什么 › c++向量和数组的区别 |
前文传送门: 一本正经的聊数据结构(1):时间复杂度 引言这个系列没有死,我还在更新。 最近事情太多了,这篇文章也是断断续续写了好几天才凑完。 上一篇我们介绍了一个基础概念「时间复杂度」,这篇我们来看第一个真正意义上的数据结构「数组」。 那为什么题目中还会有一个向量呢?这个是什么东西? 不要急,且听我慢慢道来。 内存在聊数组之前,需要先了解一个硬件,这个就是我们电脑上内存。 先了解一下内存的物理构造,一般内存的外形都长这样: 上面那一个一个的小黑块就是内存颗粒,我们的数据就是存放在那个内存颗粒里面的。 每一个内存颗粒叫做一个 chip 。每个 chip 内部,是由 8 个 bank 组成的。大致长这样(灵魂画手挖掘机老师开始上线): 而每一个 bank 是一个二维平面上的矩阵,矩阵中每一个元素中都是保存了 1 个字节,也就是 8 个 bit ,比如这样: 所以准确的来讲,我们的数据就是放在那一个一个的元素中的。 数组在 C 、C++ 、Java ,都将数组作为一个基础的数据类型内置。 很可惜,在 Python 中未将数组作为一个基础的数据类型,虽然 Python 中的 list 和数组很像,但是我更愿意叫它列表,而不是数组。 那么数组究竟是啥呢,我这里借用下邓俊辉老师「数据结构」中的定义ÿ |
CopyRight 2018-2019 实验室设备网 版权所有 |