3.插入排序

插入排序,就像是手里抓了一把牌,拿到新牌之后,找到对应的位置,插入进去;

基本步骤为:每次挑选一个数,保证这个数之前的数是有序的,最终实现排序

注,每次达到对应数比前一个数大,就停止;

 

代码:

package src;


public class InsertionSort {
    //插入排序
    public static void Print(int[] arr){
        for ( int a:arr) {
            System.out.println(a);
        }
    }
    public static void swap(int[] arr,int a,int b){
        int temp=arr[a];
        arr[a]=arr[b];
        arr[b]=temp;
    }
    //插入排序的实现
    public static void sort(int[] arr){
        for (int i = 1; i < arr.length; i++) {
            for (int j = i; j > 0 && arr[j]>arr[j-1]; j--) {
                swap(arr,j,j-1);
            }
        }
    }
    public static void main(String[] args){
        int[] arr=new int[]{5,8,6,4,9,2};
        Print(arr);
        System.out.println("----------------------");
        sort(arr);
        Print(arr);
    }
}

  

posted @ 2024-03-28 11:05  dmfsimle  阅读(4)  评论(0)    收藏  举报