java 直接插入排序
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java 直接插入排序相关的知识,希望对你有一定的参考价值。
package datastructure.maskedmen.sort;
import java.util.Arrays;
/**
* @author MaskedMen
*直接插入排序 时间复杂度:O(n2)
*/
public class InsertSort {
public static void main(String[] args) {
int[] array = {15,6,2,9,5,10,3,18,1};
System.out.println("原数组为:"+Arrays.toString(array));
insertSort(array,array.length);
System.out.println("排序后的数组为:"+Arrays.toString(array));
}
//直接插入排序
public static void insertSort(int[] array,int n){
int i=0, j=0,temp=0;
//比较n-1轮
for (i = 1; i < n; i++) {
temp = array[i];// 取出一个未排序的元素
//在已经排序好的序列中找出需要插入的位置
for (j = i - 1; j >= 0 && temp < array[j]; --j) {
array[j+1] = array[j];// 元素向后移动
}
array[j + 1] = temp;// 插入元素到数列
}
}
}
本文出自 “MaskedMen” 博客,请务必保留此出处http://maskedmen.blog.51cto.com/8100866/1745350
以上是关于java 直接插入排序的主要内容,如果未能解决你的问题,请参考以下文章