插入排序

工作原理

是通過構(gòu)建有序序列,對于未排序數(shù)據(jù),在已排序序列中從后向前掃描,找到相應位置并插入


實現(xiàn)步驟

  • 從第一個元素開始,該元素可以認為已經(jīng)被排序;
  • 取出下一個元素,在已經(jīng)排序的元素序列中從后向前掃描;
  • 如果該元素(已排序)大于新元素,將該元素移到下一位置;
  • 重復步驟3,直到找到已排序的元素小于或者等于新元素的位置;
  • 將新元素插入到該位置后;

實現(xiàn)代碼

public class Insertion_Sort {

    public static void Insertion_Sort(int[] array){
        if (array==null||array.length<=0){
            return;
        }
        int length = array.length;
        int insertNum;
        for (int i = 1; i < length; i++) {
            insertNum=array[i];
            int j=i-1;
            while(j>=0 && array[j]>insertNum){
                array[j+1]=array[j];
                j--;
            }
            array[j+1]=insertNum;
        }
    }
    public static void main(String[] args) {
        int[] array = {3,44,38,5,47,15,36,26,27,2,46,4,19,50,48};

        Insertion_Sort(array);
        System.out.println(Arrays.toString(array));
    }
}
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

友情鏈接更多精彩內(nèi)容