作者在 2010-09-25 20:42:48 发布以下内容
通过键盘输入10个数,对这些数用直接插入排序进行排序,再从小到大显示出来。。
import java.util.*;
public class InsertSort {
double num[];
Scanner scanner;
public InsertSort(){
num=new double[11];
scanner=new Scanner(System.in);
num[0]=0;
System.out.println("请输入十个数:");
for(int i=1;i<num.length;i++){
num[i]=scanner.nextDouble();
}
directSort(num);
System.out.println("排序后的结果是:");
for(int i=1;i<num.length;i++){
System.out.println(num[i]);
}
}
public void directSort(double n[]){
int i,j;
for(i=2;i<=n.length;i++){
n[0]=n[i];
for(j=i-1;j>=0&&n[0]>n[j];j--){
if(n[0]<n[j]) n[j+1]=n[j];
n[j+1]=n[0];
}
}
}
public static void main(String[] args) {
InsertSort insertSort=new InsertSort();
System.exit(0);
}
}
public class InsertSort {
double num[];
Scanner scanner;
public InsertSort(){
num=new double[11];
scanner=new Scanner(System.in);
num[0]=0;
System.out.println("请输入十个数:");
for(int i=1;i<num.length;i++){
num[i]=scanner.nextDouble();
}
directSort(num);
System.out.println("排序后的结果是:");
for(int i=1;i<num.length;i++){
System.out.println(num[i]);
}
}
public void directSort(double n[]){
int i,j;
for(i=2;i<=n.length;i++){
n[0]=n[i];
for(j=i-1;j>=0&&n[0]>n[j];j--){
if(n[0]<n[j]) n[j+1]=n[j];
n[j+1]=n[0];
}
}
}
public static void main(String[] args) {
InsertSort insertSort=new InsertSort();
System.exit(0);
}
}