JAVA排序算法之插入排序
生活随笔
收集整理的這篇文章主要介紹了
JAVA排序算法之插入排序
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
基本介紹:
插入式排序屬于內部排序法,是對于欲排序的元素以插入的方式找尋該元素的適當位置,以達到排序的目的。
插入排序法思想:
插入排序(Insertion Sorting)的基本思想是:把 n 個待排序的元素看成為一個有序表和一個無序表,開始時有 序表中只包含一個元素,無序表中包含有 n-1 個元素,排序過程中每次從無序表中取出第一個元素,把它的排 序碼依次與有序表元素的排序碼進行比較,將它插入到有序表中的適當位置,使之成為新的有序表。
插入排序思路圖:
代碼實例
public static void insertSort(int[] arr) {int insertVal = 0;int insertIndex = 0;//使用for循環來把代碼簡化for(int i = 1; i < arr.length; i++) {//定義待插入的數insertVal = arr[i];insertIndex = i - 1; // 即arr[1]的前面這個數的下標// 給insertVal 找到插入的位置// 說明// 1. insertIndex >= 0 保證在給insertVal 找插入位置,不越界// 2. insertVal < arr[insertIndex] 待插入的數,還沒有找到插入位置// 3. 就需要將 arr[insertIndex] 后移while (insertIndex >= 0 && insertVal < arr[insertIndex]) {arr[insertIndex + 1] = arr[insertIndex];// arr[insertIndex]insertIndex--;}// 當退出while循環時,說明插入的位置找到, insertIndex + 1// 舉例:理解不了,我們一會 debug//這里我們判斷是否需要賦值if(insertIndex + 1 != i) {arr[insertIndex + 1] = insertVal;}}}總結
以上是生活随笔為你收集整理的JAVA排序算法之插入排序的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 装了系统怎么设置启动引导盘 装机后如何制
- 下一篇: win32k.sys怎么替换 替换win