[csharp] kakula32
Viewer
- using System;
- class Program
- {
- 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;
- // Вывод массива после каждого шага
- Console.Write($"Шаг {i + 1}: ");
- PrintArray(arr);
- }
- }
- static void PrintArray(int[] arr)
- {
- foreach (var item in arr)
- {
- Console.Write($"{item} ");
- }
- Console.WriteLine();
- }
- static void Main(string[] args)
- {
- int[] arr = { 2, 3, 10, 5, 7, 6, 4, 12, 20, 9, 11, 22, 24, 25 };
- Console.WriteLine("Исходный массив:");
- PrintArray(arr);
- Console.WriteLine("\nТрассировка первых 10 шагов (обменов) сортировки выбором:");
- SelectionSort(arr);
- }
- }
Editor
You can edit this paste and save as new: