..


Спонсоред Линкс

Сортирање алгоритми у Ц

Члан написао Стефано Цанцедда
Страна 1 од 5

Шифра је низ врсту операције које додељује приоритет редоследа ставки у скуп како наводи се у извештају. Ови редови ће бити изложени најчешће (са ун'аппроццио високо оријентисани узорака) и свакој ће бити коментарисао заслуге и грешке.
За једноставност у примерима ће увек бити коришћен као скуп природних бројева и однос реда, као да је од већине, алгоритми су и даље изложени универзално важећа, нето од кратког рада прилагођавања кода.

Избор врсте

За наручивање број подесити један пре и интуиција може да се скенира онолико пута колико носиоца целини, са сваким кораком потрази за минималну вредност и да га додате наредио низу, прво идентификује са другом носачу;






 Пример: {5,1,3,8,2}







 Корак # 1 -> {1, к, к, к, к}







 Корак # 2 -> {1,2, к, к, к}







 Корак # 3 -> {1,2,3, к, к}







 Корак # 4 -> {1,2,3,5, Кс}







 Корак # 5 -> {1,2,3,5,8}



(Кс је означен локацију новог носиоца још није написао)

Са становишта простора у меморији, овај алгоритам примењен на овај начин је веома неповољно, јер почетни скуп се копира на други. Једноставан трик је да замени корективне операције копирања са размјену минималне вредности само наћи прва ставка која није део подскуп бројева већ наредио.






 Пример: {5,1,3,8,2}







 Корак # 1 -> {1,5,3,8,2}







 Корак # 2 -> {1,2,3,8,5}







 Корак # 2 -> {1,2,3,8,5}







 Корак # 3 -> {1,2,3,5,8}



Шифра мења Избор Сортирај која прати могуће примене:





 сел_сорт (инт * В, инт величина)







 {



   



 инт и = 0, темп = 0, и = 0, ј = 0;



   



 фор (и = 0, и = ј -)



   



 {

  

      



 

      



 {



         



 темп = в [ј];



         



 и = ј



      



 }

  

   



 свап (В, И, И) / / Пребаци позиције у вектор в иеи



   



 }







 }



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

Избор Сортирај је такође стабилно алгоритам.
Стабилни алгоритам чува ефекат претходног налога у случају структура података се третира на више тастера, као што су Име и презиме:






 1.

 



 Цхарлес Зелена







 2.

 



 Андреа Роси







 3.

 



 Марио Роси







 4..

 



 Луциано Бјанки



Смо да би поља за име:





 1.

 



 Андреа Роси







 2.

 



 Цхарлес Зелена







 3.

 



 Марио Роси







 4..

 



 Луциано Бјанки



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





 1.

 



 Луциано Бјанки







 2.

 



 Андреа Роси







 3.

 



 Марио Роси







 4..

 



 Цхарлес Зелена



Стабилни алгоритам ће обезбедити да у овом случају увек претходи Марија Роси Андреа Роси. Један нема стабилан понашање није предвидљив, па ово може да буде обрнут позицијама 2 и 3..

Избор врста је такође на лицу места.
Алгоритам се каже на лицу места (или чак и на свом месту), ако не узима додатни простор меморије него оригиналне базе података, или је мали константан износ.

У истој категорији ...
Е-учење
Фласх МКС АцтионСцрипт и (курс) Фласх МКС АцтионСцрипт и (курс)
Постани програмер Веб сајтова од 29 €.
Нарезивање ЦД-ова и ДВД-(Ебоок) Нарезивање ЦД-ова и ДВД-(Ебоок)
Водич за нарезивање ЦД-ова и ДВД-ова са фрееваре програмима. Само 25 €.
ВБ.НЕТ (курс) ВБ.НЕТ (курс)
Направите десктоп апликација са Висуал Басиц .. Од 49 €.
Спонсоред Линкс