java笔记(04,对数组进行选择排序和冒泡排序)
程序员文章站
2022-07-12 13:27:39
...
Last modified:2013-04-09 23:26:34
***********************************************
数组:同一种类型数据的集合.其实数组就是一个容器;
格式: 元素类型[] 数组名 = new 元素类型[元素格数或数组长度]{...};
new:在内存中产生一个容器实体;
新建一个数组,但是不知道里面装什么的时候,要指定数组的大小!
数组是一种单独的数据类型;引用数据类型之一(三种);
栈:用完后自动释放;
堆:用new可以在堆中建立一个空间存放对象;数组也是一种对象;
堆的特性:地址,垃圾处理机制,有特定的初始值;
编译成功说明没有语法错误,但运行不一定成功;
排序:常用的是冒泡排序和选择排序;
1.选择排序: public static void selectSort(int[] arr) { for (int i = 0; i < arr.length-1; i++) { for(int j = i+1;j<arr.length;j++){ exchange(arr, i, j); } } }
2.冒泡排序:初始化从零开始,判断条件为y<arr.length-x-1;-x为了减少遍历次数;-1为了防止越界;
public static void bubbleSort(int[] arr) { for (int i = 0; i < arr.length-1; i++) { for (int j = 0; j < arr.length-1-i; j++) { //-i为了减少遍历次数;-1为了防止越界; exchange(arr, j, j+1); } } }
exchange方法用于交换两个数的位置:
public static void exchange(int[] arr,int i,int j) { arr[j]=arr[j]^arr[i]; arr[i]=arr[j]^arr[i]; arr[j]=arr[j]^arr[i]; }