1. 程式人生 > >內排序-簡單選擇排序

內排序-簡單選擇排序

pack args n-1 ring chang 算法 new 而後 int

算法思想: 每次從序列 (i=0.1.2.......n-1) 中選出一個i值作為最大或者最小值如此下去完成排序,具體做法是假定,i是最小或最大,再和i+1 .....n-1的值比較,以確定最大或者最小的序號,而後交換他們的值。

package Sort;

public class SelectSort
{
    public static void main(String[] args)
    {

        int[] a = new int[] { 20, 30, 90, 40, 70, 110, 60, 10, 100, 50, 80, 1, 2 };
        SelectSort selectsort 
= new SelectSort(); selectsort.Sort(a); for (int t : a) System.out.println(t); } void ExchangeData(int[] datas, int index1, int index2) { datas[index1]= datas[index1]+datas[index2]; datas[index2]= datas[index1]-datas[index2]; datas[index1]
= datas[index1]-datas[index2]; } public void Sort(int[] array) { int n=array.length; int min_index=0; for(int i=0;i<n;i++) { min_index=i; for(int j=min_index+1;j<n;j++) { if(array[j]<array[min_index]) { min_index
=j; } } ExchangeData(array,i,min_index); } } }

內排序-簡單選擇排序