一:数组的三种定义
int a[]=new int[5] 数据类型 数组名[]=new 数据类型 [数组的大小]
int a[]; a=new int[5];先定义后初始化
int a[]={1,2,3,4};大括号内的直接是数组变量。
二;对象数组需要注意:
eg:定义一个dog类 dog d[]=new dog[4];先是定义dog数组
在为其赋值的时候必须先new一个对象,否者d[0] d[1]均指向的是空指针,不能为其赋值。
d[0]=new dog();
dog类里面有一个自己定义的set方法,
d[0].setName(name);
d[0].setWight(weight);
三:数组的大小必须事先给出,在编译的时候就要知道数组的大小,因此不能在控制台输入数组的大小。
数组名可以理解为指向数组首地址的引用。
数组的下标是从0开始的。
四:排序介绍
内部排序指的是所有的待排序的元素一次性的加载到内部存储器中排序,
内部排序分为:插入式,选择试,交换式。
交换式排序:运用数据值比较后,根据交换的规则交换数据的位置,以达到排序的目的,包括冒泡和快速排序
冒泡排序:从底层开始,比较相邻位置的数据,把大(小)的数据往上靠,第一次排序就是把最大
(小)的那个排在最上面。第二次排序把第二大的排在第二的位置,以此类推。
快速排序:
选择试排序:从欲排序的数据中, 按指定的规则选出某一个元素,经过和其他的元素的重整,再根据原则交换位置
达到排序的目的。分为两种:选择排序法和堆排序。
选择排序法:从数据中选择最小的一个和数组的第0个交换位置,从剩余的数据中挑选出最小的一个
和数组第一个交换位置,依次类推,直到有序。
堆排序:
插入式排序:分为三种,插入排序,希尔排序,二叉树排序。
插入排序:把一个带排序的数组看成一个有序表和一个无序表,起始在有序表中只包含一个元素,
把无序表中的元素往有序表中插入,直到无序表中没有元素。
八种排序算法的地址:http://ju.outofmemory.cn/entry/372908