Valiksortimine: erinevus redaktsioonide vahel
Eemaldatud sisu Lisatud sisu
Resümee puudub |
|||
1. rida:
{{Sortimine}}__NOTOC__
'''Valikuga sortimine''' on [[sortimisalgoritm]], täpsemalt on tegu võrdlussortimisega. Ta omab
[[Image:Selection-Sort-Animation.gif|right|thumb|Valikuga sortimine - animatsioon]]
29. rida:
== Analüüs ==
Valikuga sortimist pole raske analüüsida võrreldes teiste sortimisalgoritmidega, kuna tema efektiivsus ei sõltu sorditavatest andmetest. Esimese elemendi leidmiseks tuleb uurida läbi kõik
== Võrdlus teiste sortimisalgoritmidega ==
Lihtsate, keskmisel juhul
Analüüs näitab, et vahelepanekuga sortimine sooritab tavaliselt poole vähem võrdlusi, kui valikuga sortimine, kuid võib teha sama palju või palju vähem, sõltuvalt algsest järjestusest. Mõnede [[reaalaja-rakendus|reaalaja-rakenduste]] jaoks võib olla eeliseks, et valikuga sortimine kulutab sortimiseks alati ühepalju aega, sõltumata algsest järjestusest. Sageli on see eeliseks vahelpanekuga sortimisele, kuna see on palju efektiivsem, kui loend on juba sorteeritud või peaaegu sorteeritud.
Teine suur erinevus on, et valikuga sortimine sooritab alati
Valikuga sortimine on suurte loendite korral kõvasti nõrgem [[jaga-ja-valitse]] tüüpi algortimidest nagu [[kiirsortimine]]. Siiski on valikuga sortimine või vahelepanekuga sortimine tüüpiliselt kiiremad väikeste loendite korral (vähem kui 10-20 elementi). Kasulik optimeering [[rekursioon|rekursiivsete]] sortimisalgoritmide jaoks on kasutada valikuga sortimist või vahelepanekuga sortimist piisavalt väikesete alamloendite korral.
63. rida:
</pre>
Implementatsioon [[Python (
<pre>
def selection_sort(A) :
|