/**
插入排序
依次拿到每个元素,每拿到一个就比较这个元素和前面的所有元素的大小,
然后根据他们的大小值排好顺序,知道拿到最后一个元素,并将其位置排好后,结束整个排序过程
*/
public class InsertSort {
public static void main(String[] args){
int[] arr = {23,1,23,45,67,23,34,56,79};
insertSort(arr);
}
// 插入排序
public static void insertSort(int[] arr){
// 每一趟只能排好一个元素的位置,所以还是要循环.length-1趟
for(int i = 0;i <arr.length-1;i++){
// 将当前拿到的第i个元素,放到前面的i-1个元素中的合适位置
for(int j = i+1;j > 0;j--){
if(arr[j] < arr[j-1]){
int temp = arr[j-1];
arr[j-1] = arr[j];
arr[j] = temp;
}
}
// 遍历每一趟排序之后的结果
traversal(arr);
}
}
// 遍历数组
public static void traversal(int[] arr){
for(int i:arr){
System.out.print(i+" ");
}
System.out.println();
}
}
java实现数组的插入排序
最新推荐文章于 2024-01-02 21:20:46 发布