Java50道经典习题-程序28 排序算法

题目:对10个数进行排序
分析:可以利用选择法,即从后9个比较过程中,选择一个最小的与第一个元素交换, 下次类推,即用第二个元素与后8个进行比较,并进行交换。
public class Prog28 {
    public static void main(String[] args) {
        int [] arr= {1,3,5,7,9,0,2,4,6,8};
        //排序前
        System.out.println("排序前");
        for(int k=0;k<arr.length;k++) {
            System.out.print(" "+arr[k]);
        }
        System.out.println();
        for(int i=0;i<arr.length;i++) {
            for(int j=i+1;j<arr.length;j++) {
                if(arr[i]>arr[j]) {
                    arr[i]=arr[i]+arr[j];
                    arr[j]=arr[i]-arr[j];
                    arr[i]=arr[i]-arr[j];
                }
            }
        }
        //排序后
        System.out.println("排序后");
        for(int k=0;k<arr.length;k++) {
            System.out.print(" "+arr[k]);
        }

    }
}
/*运行结果
排序前
 1 3 5 7 9 0 2 4 6 8
排序后
 0 1 2 3 4 5 6 7 8 9
*/
经验分享 程序员 微信小程序 职场和发展