插入排序是非常简单的一种排序,思想是保证0到n-1躺是排序的,比如说首先拿第二个元素和第一个元素进行比较,进行位置转换,然后拿第三个位置的元素依次和第二个,第一个进行比较,转换位置。大致就那么简单,如下代码:
public class Sort { /** * 插入排序 保证从0到位置n上已经排序过了,即从第二个元素开始和前面的进行比较,然后换位置 * 思路 由两层遍历, 外层遍历 n-1 ,内层遍历转换 如下代码 * */ public static void main(String[] args) { int[] a = {12, 42, 7, 22, 78}; insertSort(a); System.out.println(Arrays.toString(a)); } public static void insertSort(int[] a) { for(int i = 1; i < a.length; i++) { int j; int tmp = a[i]; for(j = i; j > 0 && tmp < a[j-1]; j--) { a[j] = a[j-1]; } a[j] = tmp; } }}