Comment utiliser C# pour écrire un algorithme de tri rapide
L'algorithme de tri rapide est un algorithme de tri efficace Son idée est de diviser le tableau en sous-problèmes plus petits grâce à l'idée dediviser pour régner, puis résolvez ces sous-problèmes de manière récursive. Enfin, combinez-les pour obtenir la réponse à l'ensemble du problème.
Ci-dessous, nous présenterons en détail comment écrire un algorithme de tri rapide en utilisant C# et donnerons des exemples de code pertinents.
using System; class QuickSort { // 快速排序方法 public static void Sort(int[] arr, int low, int high) { if (low < high) { // 将数组划分成两部分 int partitions = Partition(arr, low, high); // 分别对划分后的两部分进行递归排序 Sort(arr, low, partitions - 1); Sort(arr, partitions + 1, high); } } // 划分数组,并返回划分位置 public static int Partition(int[] arr, int low, int high) { int pivot = arr[low]; // 基准元素 int left = low; int right = high; while (left < right) { // 从右往左找到第一个小于基准元素的元素 while (left < right && arr[right] >= pivot) right--; // 交换元素位置 if (left < right) Swap(arr, left, right); // 从左往右找到第一个大于基准元素的元素 while (left < right && arr[left] <= pivot) left++; // 交换元素位置 if (left < right) Swap(arr, left, right); } return left; } // 交换元素位置 public static void Swap(int[] arr, int i, int j) { int temp = arr[i]; arr[i] = arr[j]; arr[j] = temp; } // 测试代码 static void Main(string[] args) { int[] arr = { 5, 3, 8, 4, 2, 9, 1, 6, 7 }; Console.WriteLine("原始数组:"); for (int i = 0; i < arr.Length; i++) Console.Write(arr[i] + " "); Console.WriteLine(); Sort(arr, 0, arr.Length - 1); Console.WriteLine("排序后的数组:"); for (int i = 0; i < arr.Length; i++) Console.Write(arr[i] + " "); Console.WriteLine(); } }
Les résultats d'exécution sont les suivants :
原始数组: 5 3 8 4 2 9 1 6 7 排序后的数组: 1 2 3 4 5 6 7 8 9
Comme vous pouvez le voir dans l'exemple ci-dessus, utiliser C# pour écrire un algorithme de tri rapide est une méthode relativement simple et efficace qui peut nous aider à trier rapidement les tableaux. Vous pouvez modifier et développer davantage le code ci-dessus en fonction de vos propres besoins pour vous adapter aux différents besoins de tri.
Résumé
Cet article explique comment utiliser C# pour écrire l'algorithme de tri rapide et donne des exemples de code correspondants. Le tri rapide est un algorithme de tri efficace avec de bonnes performances, facile à comprendre et à mettre en œuvre, et peut être largement utilisé dans le développement réel. J'espère que cet article sera utile à tout le monde lors de l'apprentissage et de l'utilisation du langage de programmation C#.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!