Java選擇排序法程式碼詳解與實作方法
選擇排序法(Selection Sort)是一種簡單直覺的排序演算法,它的基本想法是每一趟從待排序的資料元素中選出最小(或最大)的一個元素,放在序列的起始位置,直到全部待排序的資料元素排完為止。選擇排序法的主要優點是思想簡單,實現容易,而且不需要額外的儲存空間,因此在一些簡單的排序問題上表現出良好的效能。
下面我們詳細解釋選擇排序法的實作方法,並給出具體的 Java 程式碼範例。
選擇排序法的實作方法:
Java程式碼範例:
public class SelectionSort { public static void selectionSort(int[] arr) { int n = arr.length; for (int i = 0; i < n-1; i++) { int min_idx = i; for (int j = i+1; j < n; j++) { if (arr[j] < arr[min_idx]) { min_idx = j; } } int temp = arr[min_idx]; arr[min_idx] = arr[i]; arr[i] = temp; } } public static void main(String[] args) { int[] arr = {64, 25, 12, 22, 11}; selectionSort(arr); System.out.println("排序后的数组:"); for (int i = 0; i < arr.length; i++) { System.out.print(arr[i] + " "); } } }
運行結果為:11 12 22 25 64
在上述程式碼中,我們定義了一個名為SelectionSort 的類,其中包含了一個名為selectionSort 的靜態方法,該方法接收一個整數陣列作為參數並對其進行選擇排序。在 main 方法中,我們定義了一個整數陣列 arr,並呼叫了 selectionSort 方法對其進行排序。最後,我們透過循環列印出排序後的陣列。
選擇排序法的時間複雜度為 O(n^2),其中 n 為待排序序列的長度。這使得選擇排序法對大規模資料的排序效率較低。但在一些小規模或部分有序的資料排序問題上,選擇排序法仍然可以發揮出很好的效能。
以上是詳解Java選擇排序演算法的實作方法的詳細內容。更多資訊請關注PHP中文網其他相關文章!