public class BubbleSort {
public static void main(String[] args) {
int[] arr= {12,31,32,13,8};
bubbleSort(arr);
}
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++) {
if (arr[j]>arr[j+1]) {
int temp=arr[j];
arr[j]=arr[j+1];
arr[j+1]=temp;
}
}
System.out.println("第"+(i+1)+"次循环"+Arrays.toString(arr));
}
System.out.println("冒泡最终排序:"+Arrays.toString(arr));
}
}
public class SelectSort {
public static void main(String[] args) {
int[] arr= {12,31,32,13,8};
selectSort(arr);
}
public static void selectSort(int[] arr) {
for (int i = 0; i < arr.length-1; i++) {
for (int j = 1; j <= arr.length-1-i; j++) {
if (arr[i]>arr[j+i]) {
int temp=arr[i];
arr[i]=arr[j+i];
arr[j+i]=temp;
}
}
System.out.println("第"+(i+1)+"次循环"+Arrays.toString(arr));
}
System.out.println("选择最终排序:"+Arrays.toString(arr));
}
}
-
插入排序
排序思想 :从下标为一的数即第二个数开始与前面所有的数进行比较,若小于比较的数就交换位置(每趟中的趟标对应的数与其前面的数进行比较)
public class InsertSort {
public static void main(String[] args) {
int[] arr= {12,31,32,13,8};
insertSort(arr);
}
public static void insertSort(int[] arr) {
for (int i = 1; i < arr.length; i++) {
for (int j = 0; j < i; j++) {
if (arr[i]<arr[j]) {
int temp=arr[j];
arr[j]=arr[i];
arr[i]=temp;
}
}
System.out.println("第"+i+"次循环"+Arrays.toString(arr));
}
System.out.println("插入排序最终排序为:"+Arrays.toString(arr));
}
}