自己的记录 较为重要的两个排序的方式
import java.util.Arrays;
public class Listmaopao {
public static void main(String[] args) {
// TODO Auto-generated method stub
// 冒泡排序
// 外层控制比较的轮数 内层控制每轮比较的次数 随轮数的增加而递减
int[] a = { 89, 98, 99, 100, 10, 65 };
int[] b = { 89, 98, 99, 100, 10, 65 };
int kong = 0;
for (int i = 0; i < a.length - 1; i++) {
// 比较的轮数为数组的长度减一
for (int j = 0; j < a.length - (i + 1); j++) {
// 每轮比较的次数等于 数组的长度减去轮数再减一
// 降序
if (a[j] < a[j + 1]) {
// 前边的小于后边的数
kong = a[j];
a[j] = a[j + 1];
a[j + 1] = kong;
}
}
System.out.println(Arrays.toString(a));
System.out.println(Arrays.hashCode(a));
}
System.out.println(Arrays.toString(a));
System.out.println("============================================");
//选择排序 对冒泡排序的改进 实现一次换位置 而不是多次交换位置
for (int i = 0; i < a.length-1; i++) {//外层的循环控制轮数
//每轮定义一个下标 让其为本轮循环该坐此位置的元素来坐
//降序
int minindex=i;
for (int j = i+1; j < a.length; j++) {
if (a[i]<a[j]) {//如果后边的下标存的元素比我定义的这个位置的元素要小
//就将这个位置的下标给他 让他来做这个最小的下标
minindex=j;
}
}
//对比下标于原来不同的 即更换过下标的元素
if (i!=minindex) {
int temp=a[i];
a[i]=a[minindex];
a[minindex]=temp;
}
}
//
System.out.println("++++fill的用法++++++++++++++++");
Arrays.fill(a, 5);
System.out.println(Arrays.toString(a));
}
}