一、数组的定义
数组是定长的且长度不能改变,所以声明数组的时候要给定数组长度。
数组中数据的存储是有序的。
(数组便于做查找操作,用相应的下表作为索引。但不便于做插入和删除操作,要移动大量元素,效率低)
在声明数组是对其初始化,可以省去[ ]中的长度大小。
数组动态操作
输出
表明每new一次就在堆中开辟一块内存空间,所以一开始给定的数组存储满了,再要向里面加东西时,只能重新要空间,把数组内的所有数据全部移动到另一个更大空间中。
演示数组类的排序和查找
打开源码看,可以看出底层排序的实现是一个双轴快排。
再底层对于小数组是用插入排序实现的。
二分查找法的底层实现如下:
二分查找法的原理很简单,就是折半,每次与中间的数比较,比它小就在它左边的一半,比它大则在它右边的一半。
二、数组的基本操作
手动完成的
1.打印
2、逆序
3、找最大/最小值
4、二分查找
5、排序和交换