码迷,mamicode.com
首页 > 编程语言 > 详细

插入排序

时间:2016-08-13 22:34:29      阅读:193      评论:0      收藏:0      [点我收藏+]

标签:

插入排序,某一位置的数与前面已排好序的数从后向前比较,直到找到正确的位置。

 1 private static int[] insertSort(int[] arr) {
 2         int j=0;   
 3         if (arr==null||arr.length<2) {
 4             return arr;
 5         }
 6         // 将arr分成有序区和无序区,初始有序区有一个元素
 7         // 0-(i-1) 为有序区;i-(length-1)为无序区 (i从1开始)
 8         for (int i = 1; i < arr.length; i++) {
 9             int tmp=arr[i];        //将位置i的值储存在tmp中
10             for (j = i; j>0&&arr[j-1]>tmp; j--) 
11                 arr[j]=arr[j-1];    //    如果已排好序的值比tmp大,则该元素移到下一位置
12             arr[j]=tmp;  //将tmp放在正确的位置上
13         }
14         return arr;
15     }

 

插入排序

标签:

原文地址:http://www.cnblogs.com/peng111/p/5768978.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!