java选择排序

来源:互联网 发布:南京网络问政回复时间 编辑:程序博客网 时间:2024/06/02 20:28
选择排序算法的原理:每次找出最小的一个数放到数组的最左边,然后从剩余的数组中继续找出最小的数放到剩余数组的最左边
package com.sort;public class SelectionSort {    /**     *      * @param arr     * @return 返回排序之后的数组     */        public int[] selectionSort(int[] arr){            int a=0;            for (int i = 0; i <arr.length; i++) {                int index=findMin(i,arr);//找出最小值的下标                a=arr[i];                arr[i]=arr[index];                arr[index]=a;            }            return arr;        }        /**         *          * @param start 剩余部分数组 开始部分         * @param arr 数组         * @return 返回最小值的下标         */        public int findMin(int start ,int arr[]){            int index=0;            int min=99999999;            for (int i = start; i < arr.length; i++) {                if(min>arr[i]){                    min=arr[i];                    index=i;                }            }            return index;        }        /**        *测试主函数        *        */        public static void main(String[] args) {            int[] arr = new int[]{4,1,2,8,7,9,5,4,3,5};                     arr=new SelectionSort().selectionSort(arr);            for (int i = 0; i < arr.length; i++) {                System.out.print(arr[i]);            }        }}