這篇文章主要為大家詳細介紹了java簡單選擇排序實例,具有一定的參考價值,有興趣的小夥伴們可以參考一下
##一、基本概念
# 每項從待排序的記錄中選出關鍵字最小的記錄,順序放在已排序的記錄序列末尾,直到全部排序結束為止。二、實作思路
從待排序序列中,找到關鍵字最小的元素;如果最小元素不是待排序序列的第一個元素,將其和第一個元素互換;
從剩餘的N - 1 個元素中,找出關鍵字最小的元素,重複(1)、(2)步,直到排序結束。
三、程式碼實作
#
public class SelectionSort { public static void selectionSort(int[] list){ //需要遍历获得最小值的次数 if (1>=list.length)return; for (int i=0;i<list.length-1;i++){ int temp=0; int index=i; //选择当前值为最小值索引 for (int j=i+1;j<list.length;j++){ if (list[index]>list[j]){ index=j; //修改最小值索引 } } temp=list[index]; list[index]=list[i]; list[i]=temp; } } public static void main(String[] args){ int[] list={4,3,6,5,7,8,2,10,2,9}; selectionSort(list); for (int num:list){ System.out.print(num+" "); } } }
四、時間複雜度
簡單選擇排序的比較次數與序列的初始排序無關。 假設待排序的序列有 N 個元素,則比較次數總是N (N - 1) / 2。以上是Java中選擇排序的程式碼實例的詳細內容。更多資訊請關注PHP中文網其他相關文章!