Bevezetés a gyors rendezésbe a JavaScript-ben
A rendezési algoritmus az adatszerkezet egyik fontos része. A rendezés az elemcsoport meghatározott módon történő elrendezésének módja. Amikor a gyorsabb rendezési algoritmusokról beszélünk, a Gyors rendezés kerül játékra. Ez a végrehajtási idő szempontjából az egyik legnépszerűbb válogatási technika. Ez viszonylag jobb választás bármely fejlesztő vagy kódoló számára teljesítményének köszönhetően. A Gyors rendezés a split és conquers szabályon működik. Ez azt jelenti, hogy felosztja a listát a kettőre, majd két listát osztja fel tovább, négyre osztva 4-re és így tovább. Ebben a cikkben meglátjuk, hogyan működik a gyors rendezés a példakóddal is. Azt is látni fogjuk, hogy gyorsabb a többi különféle rendezési algoritmushoz képest. Látni fogjuk ennek a gyors rendezési algoritmusnak a különféle alkotóelemeit.
Műveletek gyors rendezésben
A gyors rendezésű JavaScript három fő művelettel rendelkezik:
- Egy lista felosztása: Osztás vagy tömblista a osztás és hódítás használatával. Ez az első lépés, amelyet elmondhatunk ebben a válogatási technikában. Ehhez Pivot elemre van szükség (középső elem vagy közel a középső elemhez).
- Tételek cseréje: Ez az összes válogatási algoritmus fő célja, hogy outputként jusson a vágyalistához. Ez egy olyan módszer, amellyel az értéket egyikről a másikra helyettesíthetjük. Például A = 10; B = 20; Ha valaki cserét kér, akkor A értéke 20, B pedig 10 lesz.
- Rekurzív művelet: Ez nagy szerepet játszik a Gyors rendezés során. Mivel újra és újra elvégzi a dolgokat, nem igazán lehetséges és megbízható a rekurzív funkció nélkül. Ez valami egy függvényhívás (ugyanaz a funkció) a munka elvégzéséhez. Ez nagy szerepet játszik, amikor bármilyen feladatot újra és újra elvégzünk ugyanolyan megközelítéssel és ugyanabban a kontextusban.
A rendezési algoritmus összehasonlítása
Különböző típusú rendezési algoritmusok léteznek. Mivel a JavaScript egy programozási nyelv, támogatja az összes válogató algoritmust. Minden rendezési algoritmusnak megvannak az előnyei és hátrányai. Itt található a rendezési algoritmusok, azok teljesítménye és más mátrixok listája:
Algoritmus rendezése | Idő komplexitása | ||
Legjobb eset | Átlagos eset | Legrosszabb esetben | |
Bubble Sort | Ω (N) | Θ (N 2 ) | O (N 2 ) |
Kiválasztás Rendezés | Ω (N 2 ) | Θ (N 2 ) | O (N 2 ) |
Beszúrás Rendezés | Ω (N) | Θ (N 2 ) | O (N 2 ) |
Merge Sort | Ω (N log N) | Θ (N log N) | O (N log N) |
Halom rendezés | Ω (N log N) | Θ (N log N) | O (N log N) |
Gyors rendezés | Ω (N log N) | Θ (N log N) | O (N 2 ) |
Mint láthatjuk a listában, a QUICK rendezés gyorsabb, mint a Bubble Sort, a Selection Sort, a Insertion Sort.
Hogyan működik a gyors rendezés a JavaScript-ben?
1. lépés : A Pivot elem beolvasása - Bármilyen osztásban és meghódításban a megfelelő Pivot kiválasztása alapvető szerepet játszik. Tehát általában megpróbáljuk a tömb középső elemét Pivot elemként szerezni. Ez az elem, ahonnan az egy tömböt kettőre oszthatjuk, hogy feldolgozzuk a válogatást.
2. lépés : Indítsa el a bal oldali mutatókat a bemeneti tömb első elemének.
3. lépés : Indítsa el a jobb oldali mutatókat a bemeneti tömb utolsó elemeként.
4. lépés : Most összehasonlítjuk a bal oldali mutató elemeit a kiválasztott pivot elemmel, és szükség esetén cseréljük az értéket az üzleti követelményeknek megfelelően. Ezután összehasonlítjuk a jobb mutatót a Pivot elemmel.
5. lépés: Mozgassa mindkettőt a következőre. A fenti lépések újra és újra egy rekurzív megközelítést követnek.
Példa a gyors rendezésre a JavaScript-ben
Ez a funkció a JavaScript gyors gyors rendezésének gondozására szolgál. Ebben átadjuk a tömb teljes listáját bemenetként, és a rendezett tömbt kapjuk outputként.
Quick Sort in JavaScript
function quick_Sorting(array) (
if (array.length <= 1) (
return array; // if there is only one element then return the same
) else
(
var left = ();
var right = ();
var outputArray = ();
var pivot = array.pop();
var length = array.length;
for (var i = 0; i < length; i++) (
if (array(i) <= pivot) (
left.push(array(i));
) else (
right.push(array(i));
)
)
return outputArray.concat(quick_Sorting(left), pivot, quick_Sorting(right));
)
)
var myList = (3, 10, 2, 5, -5, 4, 7, 1);
alert("Input Array List: " + myList);
var sortedList = quick_Sorting(myList);
alert("Output Array List: " + sortedList);
Lenyűgöző teljesítményének köszönhetően a legtöbb kódoló ezt a rendezési technikát használja a beépített rendezési funkció megvalósításához. Különböző programozási nyelveken a gyors rendezést használták a beépített rendezési funkciókhoz. Számos más módszer is van arra, hogy programot írjunk a Gyors rendezés műveletek elvégzéséhez, és az összes funkció egy olyan pontra esik, amely Divide and Conquer. Tehát, ez a megosztás és meghódítás egy egyszerű szabály, amelyet a Java Gyors rendezés során kell feldolgozni. Nem csak a JavaScript-ben, hanem az összes programozási nyelven is.
Kimenet:
Ajánlott cikkek
Ez egy útmutató a Gyors rendezéshez a JavaScript-ben. Itt tárgyaljuk, hogy a gyors rendezés hogyan működik a javascript-ben, annak működését, valamint a rendezési algoritmus összehasonlítását a példával együtt. A következő cikkeket is megnézheti további információkért -
- Példák a gyors rendezés végrehajtására a Java-ban
- Mi az esettanulmány a JavaScript-ben?
- Az egyesítés tulajdonságai Rendezés a JavaScript-ben
- Konstruktorok típusai a JavaScript-ben
- Halom Rendezés Pythonban
- Csere a PHP-ben
- Beszúrás Rendezés a JavaScript-ben
- Rekurzív függvény C-ben
- Rekurzív funkció a JavaScript-ben