数组
数组的格式:
格式 1. 数据类型[] 数组名称 = new 数据类型[数组长度];
格式 2. 数据类型[] 数组名称 = {数组内容 1,数组内容 2,数组内容 3…数组内容 n};
格式 3. 数据类型[] 数组名; 格式 3 属于只创建了数组引用名, 并未在内存创建数组空间。
格式 4. 数据类型[] 数组名称 = new 数据类型[]{内容 1,内容 2,内容 3…内容 n};
数组的下标:
数组中内容的数字序号,从 0 开始 ,对于长度为 n 的数组,下标的范围是 0~n-1。
如何获取数组的长度
数组名称.length
注意:使用数组不当时可能出现的问题
数组未赋值: 空指针异常 超出长度的下标操作: 数组越界异常 注意:数组的长度在创建时就固定了。
数组的排序:
冒泡排序:比较相邻的元素,如果第一个比第二大,就交换他们,对每一对相邻的元素做重复的工作,最后的元素就是最大的数,然后比较下一轮,直到得出结果。
升序排列的口诀:
N个数字来排队
两两相比小靠前,
外层 循环length-1
内层循环length-i-1
降序排序的口诀:
N个数字来排队
两两相比大靠前,
外层 循环length-1
内层循环length-i-1
二分查找(又称折半查找)
它是一种效率较高的查找方法。但是,二分查找要求数组数据是采用的顺序存储结构的有序排列。
首先,假设数组中元素是按升序排列,将数组中间位置的数据与查找数据比较,如果两者相等,则查找成功; 否则利用中间位置记录将数组分成前、后两个子数组,如果中间位置数据大于查找数据,则进一步查找前一个子数 组,否则进一步查找后一个子数组。 重复以上过程,直到找到满足条件的数据,则表示查找成功, 直到子数组不存在为止,表示查找不成功