Алгоритми за сортиране

by Borislav Vasilev

This free e-book was created with
Ourboox.com

Create your own amazing e-book!
It's simple and free.

Start now

Алгоритми за сортиране

  • Joined Jan 2021
  • Published Books 2
Алгоритми за сортиране by Borislav Vasilev - Ourboox.com

Bubble Sort(Метод на мехурчето)

 

Методът на мехурчето е един от най-известните алгоритмни за сортиране :

1.Той сравнява последователно всичка двойка съседни елементи една с друга.

2.Ако се окаже, че вторият елемент е по-голям местата им се разменят.

Въпреки, че методът на мехурчето е един от най-семплите методи за сортиране ефективността му бързо намалява при употреба в големи редици от данни. Не е ефективен и при редици, подредени в обратен ред.

2

Пример за програма с метод на мехурчето:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            //Метод на мехурчето за сортиране на масив
            int[] arr = new int[] { 6, 9, 4, 3, 5, 1, 42, -2 };

            for (int i = 0; i < arr.Length - 1; i++)
            {
                for(int j=0; j<arr.Length - 1; j++)
                    if (arr[j] > arr[j + 1])
                    {
                        int t = arr[j];
                        arr[j] = arr[j + 1];
                        arr[j + 1] = t;
                    }
            }
            for(int i=0; i< arr.Length; i++)
                Console.Write(arr[i]+ " ");
            Console.WriteLine();

        }
    }
}
3
4
Алгоритми за сортиране by Borislav Vasilev - Ourboox.com

Selection Sort

Този алгоритъм за сортиране е известен на български още като сортиране чрез пряка селекция.

Принципът му на действие се състои в :

1.Намиране на най-малкият елемент от масива

2.Размяна на стойностите на този елемент с първия елемент от масива

3.Тези действия се повтарят докато се изчерпят всички елементи и масивът бъде подреден в нарастващ ред

6

Пример за програма с метод на пряка селекция:

 

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {  //метод на пряката селекция за сортиране на масив
            int[] arr = new int[] { 6, 9, 4, 3, 5, 1, 42, -2 };
            int i, j, m, p;
            for (i = 0; i < arr.Length - 1; i++)
            {
                m = arr[i];
                p = i;
                for(j=i+1; j<arr.Length; j++)
                    if (m > arr[j])
                    {
                        m=arr[j];
                        p=j;
                    }
                arr[p] = arr[i];
                arr[i] = m;
            }
            for ( i = 0; i < arr.Length; i++)
                Console.Write(arr[i] + " ");
            Console.WriteLine();
        }
    }
7
This free e-book was created with
Ourboox.com

Create your own amazing e-book!
It's simple and free.

Start now