排序算法
主要有以下6种:
https://www.cnblogs.com/onepixel/articles/7674659.html
a=new int[]{8,6,4,5,2,9,7};
System.out.println("冒泡排序");
for (int i = 0; i < a.length; i++) {//取前一个数
for (int j = 0; j < a.length-1; j++) {//取后一个数
if(a[j]>a[j+1])//比较两者的大小 将大的放在后面
{
int max = a[j];
a[j]=a[j+1];
a[j+1]=max;
}
}
}
a=new int[]{8,6,4,5,2,9,7};
int min =10;
int index = 0;
for (int i = 0; i < a.length; i++) {//分区 将未排序和已排序放在不同的地方
for (int j = i;j < a.length; j++) {//取出剩余的数里面的最小的那个
if(a[j]<min) {
min=a[j];
index = j;
}
}
//将取出的最小的值放在已排序的后面
int s = a[i];
a[i] = a[index];
a[index]=s;
min=10;
}
//插入排序
System.out.println("插入排序");
for (int i =1; i <a.length ; i++) {//第一次 取出未排序区的第一个待比较数
for (int j = 0; j < i; j++) {//第二次将取出的待比较数和已排序区的值从前往后比较
if(a[i]<a[j]) {
for (int j2 = j; j2 < a.length-1; j2++) {//找到插入位置后将所有后面的数据向后移动一位
int t=a[j2];
a[j2+1]=t;
a[j2]=a[i];
}
}
}
}