merge sort
Megjelenés
Főnév
merge sort (tsz. merge sorts)
A merge sort (magyarul: összefésüléses rendezés) egy hatékony, oszd meg és uralkodj (divide and conquer) elven működő összehasonlító rendező algoritmus. Stabil és garantáltan időben rendezi az elemeket.
Hogyan működik a merge sort?
- Oszd meg: A bemeneti tömböt két közel egyenlő részre bontja.
- Urald: Rekurzívan rendezze a két rész tömböt.
- Összefésül: Az így kapott két rendezett tömböt egyesítve egyetlen rendezett tömböt hoz létre.
Részletes lépések
- Ha a tömb mérete 1 vagy 0, akkor az már rendezett.
- Két rendezett rész tömböt egyesítünk úgy, hogy összehasonlítjuk az elemeket és sorban illesztjük őket egy új tömbbe.
- Az egyesítés lineáris időben történik.
Példa
Bemenet:
- Osztás: és
- Rendezés rekurzívan mindkettőn, majd összeolvasztás.
- Végül rendezett tömb:
Időbonyolultság
- Átlagos és legrosszabb eset:
- Legjobb eset:
- A logaritmikus szorzó a rekurzív osztás miatt, az a fésülés lineáris költsége miatt.
Előnyök és hátrányok
| Előnyök | Hátrányok |
|---|---|
| Stabil rendezés | Többlet memóriaigény (extra tömb) |
| Garantált idő | Lassabb, mint az in-place algoritmusok bizonyos esetekben |
| Jó párhuzamosíthatóság | Nem in-place (nem az eredeti tömbben dolgozik) |
Összefoglalás
| Fogalom | Leírás |
|---|---|
| Merge sort | Oszd meg és uralkodj algoritmus, két rendezett rész egyesítése |
| Idő: | Garantált idő |
| Memória: | Többlet memória használata szükséges |
- merge sort - Szótár.net (en-hu)
- merge sort - Sztaki (en-hu)
- merge sort - Merriam–Webster
- merge sort - Cambridge
- merge sort - WordNet
- merge sort - Яндекс (en-ru)
- merge sort - Google (en-hu)
- merge sort - Wikidata
- merge sort - Wikipédia (angol)