Предности и недостаци алгоритама за сортирање

Аутор: John Stephens
Датум Стварања: 22 Јануар 2021
Ажурирати Датум: 26 Новембар 2024
Anonim
CS50 2013 - Week 8
Видео: CS50 2013 - Week 8

Садржај

Сортирање скупа ставки на листи је чест задатак у програмирању. Често људско биће може извршити овај задатак интуитивно. Међутим, компјутерски програм треба да следи тачан редослед инструкција да би га завршио, и ова секвенца се зове алгоритам. Алгоритам за сортирање је метод који се користи за постављање листе неорганизованих ставки у одређеном редоследу. Редослед редоследа се одређује кључем. Постоји неколико алгоритама за сортирање који се разликују у погледу ефикасности и перформанси. Неке познате и важне ове врсте укључују: сортирање балона, сортирање сортирања, сортирање уметања и брзо сортирање.


Многи предмети се могу наручити помоћу алгоритма (Тхинкстоцк / Цомстоцк / Гетти Имагес)

Буббле сорт

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

Главна предност овог алгоритма је да је његова имплементација једноставна и позната. Поред тога, у сорти са мехурићима, елементи се замењују без коришћења привременог складишта, што захтева минимални простор. Главни недостатак је чињеница да не показује добре резултате када листа садржи многе ставке. То је зато што ова врста наручивања захтева н2 кораке обраде за сваки број н елемената који ће бити сортирани. Стога је сорта балона назначена за академску наставу, али не и за реалне апликације.

Селецтион сорт

Сортирање селекције непрестано прелази листу ставки тако што се одабире једна по једна ставка и ставља се у исправан положај секвенце.


Главна предност сортне селекције је да добро ради на малој листи. Поред тога, зато што је то алгоритам за одређивање места, не треба му привремено складиштење изнад онога што је потребно за складиштење оригиналне листе. Главни недостатак је његова ниска ефикасност у великим листама. Као и сорта балона, потребно је н2 број корака за сваки н елемената. Поред тога, на његове перформансе је лако утицати почетни редослед ставки пре процеса скрининга. Због тога, овај тип избора је погодан само за листу где је неколико елемената у насумичном редоследу.

Инсертион сорт

Сортирај сортира листу више пута и сваки пут убацује ставку неуређене секвенце у исправну позицију.

Главна предност редоследа уметања је његова једноставност, као и добра изведба на малим листама. То је алгоритам за наручивање места, тако да је захтев за простором минималан. Лоша страна је у томе што не функционише као ни други алгоритми сортирања. Са н2 корацима потребним за рад, инсерт сорт не ради добро са великим листама. Међутим, то је посебно корисно са листама неколико ставки.


Брзо сортирање

Брзо сортирање функционише по принципу поделе и освајања. Прво, она дели листу ставки на две под-листе на основу пивот елемента. Сви елементи у првој под-листи су распоређени тако да су мањи од стожера, док су сви елементи у другој под-листи распоређени тако да буду већи од осовине. Исти процес партиционисања и организовања извршава се више пута у резултујућим подлистама све док се не организује читава листа.

Неки сматрају да је брза сорта најбољи алгоритам за сортирање због своје значајне предности у погледу ефикасности, јер добро функционише са великом листом ставки. Наручивањем на лицу места, такође нема потребе за додатним простором за одлагање. Мали недостатак који он представља је да су његове најгоре перформансе сличне просечним перформансама других горе описаних алгоритама. Међутим, важно је напоменути да је овај најгори случај веома риједак. Уопштено, брза сорта производи најефикаснији и најчешће коришћени метод организовања листе било које величине.

Крштење је важан део живота у многим религијама, укључујући Лутеранску цркву. Бебе рођене у овој религији крштавају се као демонстрација посвећености Цркви и посвећености вршењу Божјег дела. За лутера...

Гениталне брадавице су једна од најчешћих полно преносивих болести и врло су заразне. Утичу и на жене и на мушкарце. До 30% случајева нестану без лечења. Гениталне брадавице се могу или не морају поно...

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