加入我们,或者,欢迎回来。
您需要 登录 才可以下载或查看,没有帐号?注册会员
x
Array: 数组,阵列
一维数组 概念:只有宽,或只有高。 简单讲,他的面积只有一行,或者一列。
某个数值的坐标: (1, y) or ( x, 1)
这是一个一维数组: 宽度是10,高度只有1
这是一个一维数组: 宽度是1,高度是6
是不是想到一个东西—— Excel表格。 用表格来举例,一维数组应该是长这个样子的:
温馨提示: 灰色背景部分不算表格内容。 只是为了解释方便而向外扩展。
或者
白色格子里面,相当于一个抽屉。 你应该去过超市,用过储物柜吧~ 你可以在格子里面,放进一些东西。
比如:
这个数组在程序上就是这样写: Socre[ 100, 98, 85, 61 ];
在人类语言的世界里,我们数数是从1开始的数。 表格第1个格子的数值是100 表格第2个格子的数值是98 表格第3个格子的数值是85 表格第4个格子的数值是61
但是,在计算机的世界里,数数是从0开始数的。 数组的第0个位置,是100 数组的第1个位置,是98 数组的第2个位置,是85 数组的第3个位置,是61
请问,这个表格 / 数组的大小是多少? 当然是4个啦..你数数看 [0, 1, 2, 3]
请问,这个数组的第2个位置的值是多少? Sorce[2] = ?
是98吗?错! 正确答案应该是85
欢迎来到“从零开始的数组世界生活”
二维数组 概念:不仅有宽还有高。 Width, Height
上面的只有一列或者一行的表格,升级啦! 现在的样子才是真正的表格。
某个数值的坐标: (x, y)
这是一个二维数组: 宽度是6,高度是6 A
| B | C | D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |
这是一个二维数组: 宽度是7,高度是6
请问,在这个日历的二维数组中,位置(4, 5)的值是多少?
用JavaScript来演示的话:
如果把日历看成6行,7列的话。横着看,一共有6行
第0行是 [26, 27, 28, 29, 30, 1, 2], 第1行是 [ 3, 4, 5, 6, 7, 8, 9], 第2行是 [10, 11, 12, 13, 14, 15, 16], 第3行是 [17, 18, 19, 20, 21, 22, 23], 第4行是 [24, 25, 26, 27, 28, 29, 30], 第5行是 [31, 1, 2, 3, 4, 5, 6]
找到了第4行,就竖着看列。一共有7列
第4行的第0列是 24 第4行的第1列是 25 第4行的第2列是 26 第4行的第3列是 27 第4行的第4列是 28 第4行的第5列是 29 第4行的第6列是 30
所以,这个数组 date[4][5] = 29
下一个问题,
请告诉我18在数组的哪个位置。
date[3][1] = 18
三维数组 概念:不仅有宽还有高,还多了深度 Width, Height, Depth
某个数值的坐标: (x, y, z)
用Excel来举例。 如果说,刚刚的日历是在Excel其中一张Sheet。
你问 Sheet 是什么? 看下面.....
你所看到的一张Sheet,是一个二维数组。 你可以轻松的通过坐标来找到一个位置。
比如, 横着看,在表格中是以字母的顺序来标记。 数着看,在表格中是以数字的顺序来标记。
举例,A1,C10, F36, AT35等。
但在计算机的世界中, 是以(x, y)来标记坐标的。
横着看,是X轴,越往右,X越大。 竖着看,是Y轴,越往下,Y越大。
当然,也得看原点在哪,也就是以哪个地方为出发点。
相信在学校中,你们数学老师教过你们坐标系的概念 :)
X和Y知道了,现在,又多了一个Z轴是什么概念呢? 坐标变成了 (X, Y, Z)
刚刚拿EXCEL来举例,所以Z就是所在的Sheet表。
比如第一张表格的第A行第4列。 对应的坐标就是(A, 4, Sheet 1)
再换个例子,柜子 现在有A, B, C,三个柜子。 每个柜子有3行4列,共12个格子。
如果你把东西存在了A柜的第7号格子。 也就是第1个柜子,第3列第2行的第3个格子。
在计算机世界中,如果原点在左上角。 那它所在位置就是 X = 2 , Y = 1, Z = 0
记住,从零开始数数。
|