кодесурса
«C #

Упражнения по алгоритму поиска и сортировки C # Sharp: сортировка вставками

script1adsense2code
script1adsense3code

Алгоритм поиска и сортировки C # Sharp: упражнение-6 с решением

Напишите программу на C # Sharp для сортировки списка элементов с помощью сортировки вставками.

Вставка сортировки - это простой алгоритм сортировки, который создает окончательный отсортированный массив (или список) по одному элементу за раз. Он гораздо менее эффективен в больших списках, чем более продвинутые алгоритмы, такие как быстрая сортировка, heapsort или сортировка слиянием.

Иллюстрированная презентация: вставка сортировки

«с

Графический пример вставки сортировки:

«Вставка

Кредиты на анимацию: Swfung8

Пример решения : -

C # острый код:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace CommonInsertion_Sort
{
    class Program
    {
        static void Main(string[] args)
        {
            int[] numbers = new int[10] {2, 5, -4, 11, 0, 18, 22, 67, 51, 6};
            Console.WriteLine("\nOriginal Array Elements :");
			PrintIntegerArray(numbers);
            Console.WriteLine("\nSorted Array Elements :");
            PrintIntegerArray(InsertionSort(numbers));
			Console.WriteLine("\n");
            }
        static int[] InsertionSort(int[] inputArray)
        {
            for (int i = 0; i < inputArray.Length - 1; i++)
            {
                for (int j = i + 1; j > 0; j--)
                {
                    if (inputArray[j - 1] > inputArray[j])
                    {
                        int temp = inputArray[j - 1];
                        inputArray[j - 1] = inputArray[j];
                        inputArray[j] = temp;
                    }
                  }
            }
            return inputArray;         
        }
        public static void PrintIntegerArray(int[] array)
        {
            foreach (int i in array)
            {
                Console.Write(i.ToString() + "  ");
            }
         }
       
        public static int[] InsertionSortByShift(int[] inputArray)
        {
            for (int i = 0; i < inputArray.Length - 1; i++)
            {
                int j;
                var insertionValue = inputArray[i];
                for (j = i; j > 0; j--)
                {
                    if (inputArray[j - 1] > insertionValue)
                    {
                        inputArray[j] = inputArray[j - 1];
                    }
                }
                inputArray[j] = insertionValue;
            }
            return inputArray;
        }
     }
}

Пример вывода:

 Оригинальные элементы массива:                                                                                     
2 5 -4 11 0 18 22 67 51 6                                                                            
Сортированные элементы массива:                                                                                       
-4 0 2 5 6 11 18 22 51 67

Блок - схема:

«C #

Редактор кода C # Sharp:

Внесите свой код и комментарии через Disqus.

Предыдущий: Напишите программу на C # Sharp для сортировки списка элементов с помощью сортировки в куче.
Далее: Напишите программу на C # Sharp для сортировки списка элементов с помощью сортировки слиянием.

Каков уровень сложности этого упражнения?

Новый контент: Composer: менеджер зависимостей для PHP , R программирования


script1adsense4code
script1adsense5code
disqus2code
script1adsense6code
script1adsense7code
script1adsense8code
buysellads2code