java实现插入排序算法
投稿:hebedich
插入排序算法是一个对少量元素进行排序的有效算法。插入排序的工作原理与打牌时整理手中的牌的做法类似,开始摸牌时,我们的左手是空的,接着一次从桌上摸起一张牌,并将它插入到左手的正确位置。
1、算法概念。
每次从无序表中取出第一个元素,把它插入到有序表的合适位置,使有序表仍然有序。
2、算法思想。
假设待排序的记录存放在数组R[1..n]中。初始时,R[1]自成1个有序区,无序区为R[2..n]。从i=2起直至i=n为止,依次将R[i]插入当前的有序区R[1..i-1]中,生成含n个记录的有序区。
public static void insertSort(int[] array) { int len = array.length; for (int i = 1; i < len; i++) { for (int j = i; j > 0; j--) { if (array[j] < array[j - 1]) { Sort.swap(array, j, j - 1);//交换j和j-1 } else break; } } }
插入排序示意图:
以上所述就是本文给大家分享的全部内容了,希望能够对大家理解插入排序算法有所帮助。