本帖最后由 不想睡 于 2015-8-27 23:46 编辑
插入排序:将要排序的数组分为有序部分和无序部分,每次从无序部分取出一个元素插入到有序部分的适合位置。通常在排序开始前,有序部分为数组的第一个元素
以下是代码
public class InseretionSort{
public static void main(String[] args){
int score[]={900,878,891,904,865,912,868,870,898,903};
//打印数组元素
System.out.print("未排序结果:");
for(int i=0;i<score.length;i++){
System.out.print(score+" ");
}
System.out.println();
//插入排序算法:从大到小排序
for(int i=1;i<score.length;i++){
for(int j=i;j>0;j--){
if(score[j]>score[j-1]){
int temp=score[j];
score[j]=score[j-1];
score[j-1]=temp;
}
}
//每遍历一次数组的结果
System.out.print("第"+i+"次插入:");
for(int k=0;k<score.length;k++){
System.out.print(score[k]+" ");
}
System.out.println();
}
//最终排序的结果
System.out.print("最终排序结果:");
for(int i=0;i<score.length;i++){
System.out.print(score+" ");
}
System.out.println();
}
}
|
|