标签:
1 /** 2 *插入排序思路:O(n^2) 3 * 最外层一个循环,从第二个数到最后一个,变量为i 4 * 每个数存储在key变量中 5 * 变量j,是左边已经排好序的数组的上限 6 * 判断key与前面每一个数比较 1,3,5,2,4,6,8,5,9,10 7 * 《------- 8 * 如果key小于前一个并且已经排好序的数组没有越界 9 * 调换两个数 10 * j向左移 11 * 12 * 把key放在指定位置 j+1 13 * 14 */ 15 16 public class InsertSort 17 { 18 public static void insertSort(int[] resouceArr) 19 { 20 21 for(int i = 1 ; i < resouceArr.length ; i++ ) 22 { 23 int key = resouceArr[i] ; 24 int j = i - 1 ; 25 26 while( j > 0 && resouceArr[j] > key) 27 { 28 resouceArr[j+1] = resouceArr[j] ; 29 j = j - 1 ; 30 } 31 resouceArr[j+1] = key ; 32 } 33 } 34 }
标签:
原文地址:http://www.cnblogs.com/fubinhnust/p/4183292.html