1、数组的优缺点:1)、优点:插入数据快。
2)、缺点:查找和删除比较慢,而且数组的长度固定(一旦创建数组,那么数组大小就不可以改变)。
2.数组的两种定义方式:例如:
int[] array=new int[100];
或者是:int array[]=new int[100];主意:上述数组没有赋值,他们一直是特殊的null对象。
定义并且初始化数组:
int[] array={1,3,4,6,5,4,32,,4,322,4};
3、无序数组的插入:常数
无序数组的插入使我们到现在为止所见过的算法中唯一一个与数组中的数据项无关的算法,新的数据项总是被放在下一个有空的地方,无论数据中的数据项个数n有多大,一次插入总是用相同的时间,可以把向一个无序数组中插入一个数据项的时间T看做一个常数。T=K
在现实情况下,插入所需要的实际时间与以下这些因素有关:1)微处理器2)编译程序生成代码的效率等等。
4.线性查找:与N成正比
在数据项的线性查找中,查找特定数据项所需要的比较次数为数据项总数的一般,因此设N为数据项总数,搜索时间T与N的一半成正比:
T=K*N/2(查找时间与数组大小成正比)
5.二分查找:与log(N)成正比
总结如下:
线性查找:O(N)
二分查找:O(logN)
无序数组的插入:O(1)
有序数组的插入、无序数组的删除、有序数组的删除:O(N)