/**
* 练习排序算法类
*
* @author Administrator
*
*/
public class PracticeSort {
static int [] arry = {11,10,55,78,100,111,45,56,79,90,345,1000};//待排序数组
public static void main(String[] args) {
int [] arry2 = {30,11,10,55,78,100,111,45,56,79,90,345,1000};//待排序数组
insertSort(arry2);
outprint(arry2);
}
//插入排序
private static void insertSort(int [] arry){
for (int i = 1; i < arry.length; i++) {//对待排序数组的遍历
int tempdata = arry[i]; //第一个元素自成一个值域,从第二个元素开始
int j = i -1;//前一个元素下标
while (j >= 0 && arry[j] > tempdata) {//注意j = 0的情况
//当前一个元素大于当前值时,把该元素放到当前值的位置上
arry[j + 1] = arry[j];
j = j-1;//往前走一个位置
}
arry [j + 1] = tempdata;
}
}
//输出
private static void outprint(int [] arry){
for (int i = 0; i < arry.length; i++) {
System.out.print(arry[i]+",");
}
}
}