选择排序是一种简单直观的排序算法,它的工作原理是:在未排序的序列中找到最小(或最大)的元素,然后将其与未排序序列的第一个元素进行交换位置。接着,在剩余的未排序序列中继续寻找最小(或最大)元素,并与未排...
选择排序是一种简单直观的排序算法,它的工作原理是:在未排序的序列中找到最小(或最大)的元素,然后将其与未排序序列的第一个元素进行交换位置。接着,在剩余的未排序序列中继续寻找最小(或最大)元素,并与未排序序列的第二个元素进行交换,以此类推,直到整个序列都被排序完成。
选择排序的基本思想是:在未排序序列中找到最小(或最大)的元素,然后将其与未排序序列的第一个元素进行交换位置。这个过程会使得每次遍历后最小的未排序元素被放置到已排序序列的末尾。
minIndex)。以下是一个使用Java实现选择排序的示例代码:
public class SelectionSort { public static void main(String[] args) { int[] arr = {64, 25, 12, 22, 11}; System.out.println("原始数组: " + Arrays.toString(arr)); selectionSort(arr); System.out.println("排序后数组: " + Arrays.toString(arr)); } public static void selectionSort(int[] arr) { int n = arr.length; for (int i = 0; i < n - 1; i++) { // 将当前位置设为最小值的位置 int minIndex = i; // 在未排序部分找到最小值的索引 for (int j = i + 1; j < n; j++) { if (arr[j] < arr[minIndex]) { minIndex = j; } } // 将找到的最小值元素交换到它应该在的位置 int temp = arr[minIndex]; arr[minIndex] = arr[i]; arr[i] = temp; } }
}通过以上内容,读者应该能够对Java中的选择排序有一个深入的理解,并能够在实际项目中应用这一算法。