首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

算法:排序-直接插入排序(Java)

2013-10-31 
算法:排序----直接插入排序(Java)public static void insertionSort(int[] arr) {int len arr.length//

算法:排序----直接插入排序(Java)


public static void insertionSort(int[] arr) {int len = arr.length;// 初始是从第二个元素开始的,因为默认第一个元素是已经排好序的for (int i = 1; i < len; i++) {int temp = arr[i];  //抽出待插入的元素,在下面的while循环中此值是不能变的int j = i;          //记录待插入的元素对应的索引。此索引要从后向前逐一对比。如果前一个元素大于待插的,那么将向移动一位while (j > 0 && (arr[j - 1] > temp)) {arr[j] = arr[j - 1];  //向后移动一位j--;                  //同时索引向前减一} //一直到第一个元素或者遇到小于待插入的元素时,跳出while循环,此时j便是待插入的元素的位置索引arr[j] = temp;            }}

学习资料:

http://blog.chinaunix.net/uid-7377577-id-2641991.html

http://student.zjzk.cn/course_ware/data_structure/web/paixu/paixu8.2.1.1.htm

http://www.cnblogs.com/kkun/archive/2011/11/23/2260265.html

热点排行