第三章④排序

2019-04-26  本文已影响0人  犀首_0c79

因为数组变量和元素分开存储(栈放变量,堆放元素,变量的值是元素的地址)

new出来的都放在堆里

9 100 -99 -65 0 9 43 12

for循环从0开始,而数组的长度是0~length-1

12 43 9 0 -65 -99 100 9

冒泡排序:

每次找最大的,外循环执行多少趟n-1,内循环一趟循环n-1-i次。

外层:控制循环多少趟 N个数字要排序要排序完成,总共进行N-1趟排序

内层:控制每一趟循环的循环次数 每趟排序次数为N-i 每进行一趟排序,就会少比较一次。因为每一趟都会找出一个较大值 内层:uu.length-1是因为只用比那么多次,再-i是因为每一次都会找出较大值到最后那个位置就不用变了 

选择排序:

每次找最小的,外循环执行多少趟n-1,内循环j=i(i),j<n-1-i

每一趟都选出最小的和当前值交换位置

每一趟从i后一个元素开始,因为最小的已经找到了就不用再比较了

数组元素默认初始化值:

byte short int long:0

float double:0.0

char:空格

boolean:false

引用类型(类、接口、数组):null

数组常见异常:

1.数组下标越界java.lang.ArrayIndexOutOfBoundsException

2.空指针NullPointerException

二维数组赋值要 int[][]r=new int[5][]

 不能r[3][1]=12

 需要

r[3]=new[5] 

r[3][1]=12

上一篇下一篇

猜你喜欢

热点阅读