Како имплементирати Мерге Сорт у Питхон?



Ево једноставног и једноставног водича да научите како да користите Мерге Сорт и да сазнате више о његовом алгоритму и примени у Питхону

Овај блог заснован је на приступу подели и освоји. Сортирање стапања је алгоритам „подели и освоји“ где се проблем дели на подпроблеме, а затим се спаја да би се освојило решење. Овај блог на Мерге Сортирај у детаљно ће вас провести кроз доленаведене теме -

Шта је сортирање стапања у Питхону?

Сортирање стапања заснива се на алгоритму за поделу и освајање, где је улазни низ подељен на две половине, затим је сортиран одвојено и спојен назад да би се дошло до решења. Функција мерге () користи се за спајање сортираних .





Приступ завади и победи

  • Низ се дели на пола и поступак се понавља са сваком половином све док свака половина не буде величине 1 или 0.
  • Низ величине 1 тривијално је сортиран.
  • Сада су два сортирана низа комбинована у један велики низ. И ово се наставља све док се сви елементи не комбинују и низ не сортира.

Ево визуелизације сортирања спајања како бисте очистили слику за вас

Улазни низ = [3,1,4,1,5,9,2,6,5,4]



Спајање сортирај | Едурека Блогс | Едурека
Пређимо сада на примену.

Водич за Мицрософт СКЛ за почетнике

Имплементација сортирања стапања у Питхон-у

деф мергеСорт (нлист): принт ('Сплиттинг', нлист) иф лен (нлист)> 1: мид = лен (нлист) // 2 лефтхалф = нлист [: мид] ригхтхалф = нлист [мид:] мергеСорт (лефтхалф) мергеСорт (десно) и = ј = к = 0 док је и

Излаз:

$ питхон маин.пи
(„Цепање“, [3, 1, 4, 1, 5, 9, 2, 6, 5, 4])
(„Цепање“, [3, 1, 4, 1, 5])
(„Цепање“, [3, 1])
(„Цепање“, [3])
(„Спајање“, [3])
(„Цепање“, [1])
(„Спајање“, [1])
(„Спајање“, [1, 3])
(„Цепање“, [4, 1, 5])
(„Цепање“, [4])
(„Спајање“, [4])
(„Цепање“, [1, 5])
(„Цепање“, [1])
(„Спајање“, [1])
(„Цепање“, [5])
(„Спајање“, [5])
(„Спајање“, [1, 5])
(„Спајање“, [1, 4, 5])
(„Спајање“, [1, 1, 3, 4, 5])
(„Цепање“, [9, 2, 6, 5, 4])
(„Цепање“, [9, 2])
(„Цепање“, [9])
(„Спајање“, [9])
(„Цепање“, [2])
(„Спајање“, [2])
(„Спајање“, [2, 9])
(„Цепање“, [6, 5, 4])
(„Цепање“, [6])
(„Спајање“, [6])
(„Цепање“, [5, 4])
(„Цепање“, [5])
(„Спајање“, [5])
(„Цепање“, [4])
(„Спајање“, [4])
(„Спајање“, [4, 5])
(„Спајање“, [4, 5, 6])
(„Спајање“, [2, 4, 5, 6, 9])
(„Спајање“, [1, 1, 2, 3, 4, 4, 5, 5, 6, 9])
[1, 1, 2, 3, 4, 4, 5, 5, 6, 9]



како претворити бинарни низ у децимални у јави

Дијаграм тока за примену сортирања обједињавања

Предности и употреба сортирања спајања

Већина осталих алгоритама ради лоше са секвенцијалним структурама података попут датотека и повезаних листа. У овим структурама приступ случајном елементу траје линеарно, а не регуларно константно време. А природа сортирања спајања олакшава и брзи поступак за такве структуре података.Једна од најбољих карактеристика сортирања спајања је мали број упоређивања. Чини О (н * лог (н)) број упоређивања, али константни фактор је добар у поређењу са брзим сортирањем, што га чини корисним када је функција упоређивања спора операција.Такође, приступ подели и освоји и спајања чини погодним за паралелну обраду.

Овим смо дошли до краја овог блога на тему „Како имплементирати сортирање стапања у Питхон-у“. Надам се да је садржај додао неку вредност вашем знању у Питхону. Да бисте стекли детаљно знање о Питхону, заједно са разним апликацијама, можете се пријавити за уживо са подршком 24/7 и доживотним приступом.