数组理论知识
数组理论知识
数组是存放在连续内存空间上的相同数据类型的集合。

注意
- 数组下表都是从0开始的。
- 数组内存空间的地址是连续的
正是因为数组的在内存空间的地址是连续的,所以我们在删除或者增添元素的时候,就难免要移动其他元素的地址
例如删除下表为3的元素,需要对下表为3的元素后面的所有元素都要做移动操作,
时间复杂度为O(n),所以数组不适合做频繁的增删操作 ,这一点在以后解题选择容器的时候中也是非常重要的。
至于二维数组,直接上图,大家应该就知道怎么回事了,图中a[][]表示的就是二维数组
二维数组其实就是一个矩阵
那么二维数组在内存的空间地址是连续的么?
我们来举一个例子,例如: int[][] rating = new int[3][4]; , 这个二维数据在内存空间可不是一个 3*4 的连续地址空间
如图所示:
二位数组中其实是一个线性数组存放着 其他数组的首地址。
所以二维数据在内存中不是 3\*4 的连续地址空间,而是四条连续的地址空间组成!
很多同学会以为二维数组在内存中是一片连续的地址,其实并不是。

浙公网安备 33010602011771号