算法(第4版)-1.1.5 数组

Posted Guure

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了算法(第4版)-1.1.5 数组相关的知识,希望对你有一定的参考价值。

总结:本小节讲述了数组的含义、创建数组的三个步骤、典型的数组处理代码、起别名及二维数组的内容。

 

重点:

 

1.在创建数组时,需要指定数组的长度(元素的个数)。我们需要在运行时明确地创建数组的原因是Java编译器在编译时无法知道应该为数组预留多少空间(对于原始类型则可以)。

 

2.

double[] a;
a = new double[N];
for (int i = 0; i < N; i++)
    a[i] = 0.0;

for语句初始化了数组的N个元素,将它们的值置为0.0。在代码中使用数组时,一定要依次声明、创建并初始化数组。忽略了其中的任何一步都是很常见的编程错误。

然而,在实际测试中并不需要用for语句进行初始化。

 

3.Java会自动进行边界检查--如果你创建了一个大小为N的数组,但使用了一个小于0或者大于N-1的索引访问它,程序会因为运行时抛出ArrayOutOfBoundsException异常而终止。

 

4.熟悉典型的数组处理代码(P11-P12):

· 找出数组中最大的元素

· 计算数组元素的平均值

· 复制数组

· 颠倒数组元素的顺序

· 矩阵相乘(方阵) - a[][] * b[][] = c[][]

 

5.数组名表示的是整个数组--如果我们将一个数组变量赋予另一个变量,那么两个变量将会指向同一个数组。如果你是想将数组复制一份,那么应该声明、创建并初始化一个新的数组,然后将原数组中的元素值挨个复制到新数组,如上面第三个例子所示。

 

6.创建二维数组时要在类型名之后分别在方括号中指定行数以及列数,例如:

double[][] a = new double[M][N];

 

以上是关于算法(第4版)-1.1.5 数组的主要内容,如果未能解决你的问题,请参考以下文章

算法(第4版)-2.2 归并排序

算法(Algorithms)第4版 练习 1.5.3

算法(第4版)-2.1 初级排序算法

算法(第4版)-2.5 应用

算法(Algorithms)第4版 练习 1.5.1

算法(第4版)-1.3.4 综述