选择排序算法java版

来源:互联网 发布:大内义兴数据 编辑:程序博客网 时间:2024/06/06 17:26

用jjava语言实现选择排序算法

选择排序图解:

代码如下:

/** * 选择排序 *@author 屌丝程序猿_TNT_ */public class ArrayTest {    /**     * 测试方法     * @param args     */    public static void main(String[] args) {        int[] arr = {11,27,422,42,5,26,23,2,3,45,35,64};        sort(arr);    }    /**     * 选择排序算法     *      * @param arr     */    private static void sort(int[] arr) {        System.out.println("排序之前:");        for (int i : arr) {            System.out.print(i+"\t");        }        System.out.println("\n");        int temp = 0;//第三方变量,方便换位        //外层for循环,变量变化一次,内层for执行一遍        for (int i = 0; i < arr.length; i++) {//确定第一次要比较的元素            //注意点,j=i+1            for (int j = i+1; j < arr.length; j++) {//外层循环的i元素和内层循环剩余的元素比较                if (arr[i]>arr[j]) {//如果前面的元素大于后面的元素,则进行换位。                    temp = arr[i];                    arr[i] = arr[j];                    arr[j] = temp;                }            }            System.out.println("循环了"+(i+1)+"次");            for (int k : arr) {                System.out.print(k+"\t");            }            System.out.println("\n");        }        System.out.println("\n");        System.out.println("排序之后:");        for (int i : arr) {            System.out.print(i+"\t");        }    }}