选择排序

第一个for循环下设置minindex为当前第一个for循环所在的位置作为最小索引,第二个for循环中第一个for循环开始的后一个位置从前到后寻找最小值的索引即minindex。进行第二个循环中找出的最小值索引mindex对应值跟第一个for循环最开始i位置对应值进行交换。

package ZuoShenJiChu;

import java.util.Arrays;

public class SelectSort {
    public static void main(String[] args) {
        int arr[]={2,1,4,98,6,3,55,3};
        selectSort(arr);
        System.out.println(Arrays.toString(arr));
    }
    public static void selectSort(int []arr)
    {

        for (int i=0;i<arr.length-1;i++)
        {
            int minindex=i;
            for (int j=i+1;j<arr.length;j++)
            {
                minindex=arr[j]<arr[minindex]?j:minindex;
            }
            swap(arr,i,minindex);
        }
    }
    public static void swap(int [] arr,int i,int j)
    {
        int temp=arr[i];
        arr[i]=arr[j];
        arr[j]=temp;
    }
}

 

posted @ 2019-05-01 16:02  Dloading  阅读(157)  评论(0编辑  收藏  举报