java 插入排序

xiaoxiao2021-02-28  10

java 插入排序

package order.insertion.demo; //插入排序 public class InsertionSort { public static int[] arr = new int[] { 2, 4, 5, 1, 3, 8, 6, 9, 0, 7 }; public static void main(String[] args) { // 从大到小排序 int temp, j; int sortCount = 0;// 遍历次数 int handleCount = 0;// 处理次数 for (int i = 0; i < arr.length; i++) { j = i - 1; temp = arr[i]; while (j >= 0 && temp > arr[j]) { arr[j + 1] = arr[j]; j--; handleCount++; } arr[j + 1] = temp; sortCount++; System.out.println("i下标: " + i + " index下标: " + j); } // 查看结果 for ( int i : arr) { System.out.print(i + "\t"); } System.out.println(); System.out.println("遍历次数: " + sortCount); System.out.println("操作次数: " + handleCount); } // i下标: 0 index下标: -1 // i下标: 1 index下标: -1 // i下标: 2 index下标: -1 // i下标: 3 index下标: 2 // i下标: 4 index下标: 1 // i下标: 5 index下标: -1 // i下标: 6 index下标: 0 // i下标: 7 index下标: -1 // i下标: 8 index下标: 7 // i下标: 9 index下标: 1 // 9 8 7 6 5 4 3 2 1 0 // 遍历次数: 10 // 操作次数: 29 }
转载请注明原文地址: https://www.6miu.com/read-750284.html

最新回复(0)