Bagaimana untuk melaksanakan algoritma isihan pemilihan dalam C#
选择排序(Selection Sort)是一种简单直观的排序算法,其基本思想是每次从待排序元素中选择最小(或最大)的元素,放到已排序的序列末尾。通过重复这个过程,直到所有元素都排序完成。
下面我们来详细了解如何在C#中实现选择排序算法,同时附上具体的代码示例。
public static int[] 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; } return arr; }
class Program { static void Main(string[] args) { int[] arr = { 64, 25, 12, 22, 11 }; Console.WriteLine("原始数组:"); PrintArray(arr); // 调用选择排序方法对数组进行排序 int[] sortedArr = SelectionSort(arr); Console.WriteLine("排序后的数组:"); PrintArray(sortedArr); } // 打印数组 static void PrintArray(int[] arr) { foreach (int element in arr) { Console.Write(element + " "); } Console.WriteLine(); } }
在上面的示例程序中,我们使用了一个包含5个整数的数组作为排序的示例。首先,我们将原始数组打印出来,然后调用选择排序方法进行排序,最后打印排序后的数组。
原始数组: 64 25 12 22 11 排序后的数组: 11 12 22 25 64
通过运行程序,可以看到原始数组经过选择排序算法的处理后,已经变成了有序的数组。
总结:
选择排序是一种简单但低效的排序算法。它的时间复杂度为O(n^2),适用于较小规模的数组排序。在实际应用中,我们可以使用更高效的排序算法来替代选择排序,如快速排序、归并排序等。
希望本文的介绍和代码示例能帮助大家更好地理解和应用选择排序算法。
Atas ialah kandungan terperinci Bagaimana untuk melaksanakan algoritma isihan pemilihan dalam C#. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!