Uvod u brzi poredak u JavaScript-u
Algoritam sortiranja jedan je od važnih dijelova strukture podataka. Razvrstavanje je način slaganja skupine predmeta na određeni način. Kad god raspravljamo o bržim algoritmima za razvrstavanje, u obzir se ulazi Quick Sort. Ovo je jedna od najpopularnijih tehnika sortiranja u odnosu na vrijeme izvršenja. Ovo je usporedno bolji izbor bilo kojeg programera ili koderiranja zbog svojih performansi. Brzo razvrstavanje funkcionira na principu podjele i osvajanja. To znači da popis dijeli na dva, a zatim dva popisa koja se dalje dijele na 4 rekurzivno i tako dalje. U ovom ćemo članku vidjeti kako brzo sortiranje funkcionira i sa primjerom koda. Također, vidjet ćemo kako je brži u usporedbi s drugim raznim algoritmima sortiranja. Vidjet ćemo razne komponente ovog algoritma za brzo sortiranje.
Operacije u Quick Sort
Postoje tri glavne operacije u brzom načinu JavaScripta:
- Particioniranje popisa: Podjela ili popis polja pomoću podijeli i osvoji. To je prvi korak koji možemo reći u ovoj tehnici sortiranja. Za to nam je potreban element Pivot (srednji element ili blizu srednjeg elementa).
- Zamjena stavki: Ovo je glavna svrha bilo kojeg algoritma za sortiranje da dođe na popis želja kao izlaz. Ovo je mehanizam za sortiranje zamjene vrijednosti s jedne na drugu. Na primjer, A = 10; B = 20; Ako netko zatraži zamjenu, vrijednost A će biti 20, a B 10.
- Rekurzivna operacija: ovo igra veliku ulogu u brzom sortiranju. Kao što uvijek iznova radite, nije toliko moguće i pouzdano bez rekurzivne funkcije. Ovo je nešto što sam poziv funkcije (ista funkcija) može obaviti posao. To igra veliku ulogu gdje izvodimo bilo koji zadatak iznova i iznova s istim pristupom i u istom kontekstu.
Usporedba algoritma za sortiranje
Postoje razne vrste algoritma sortiranja. Budući da je JavaScript programski jezik, on podržava sve algoritme sortiranja s njim. Svaki algoritam sortiranja ima svoje prednosti i nedostatke. Evo popisa algoritama za razvrstavanje, njegovih performansi i ostalih matrica:
Algoritam sortiranja | Vremenska složenost | ||
Najbolji slučaj | Prosječni slučaj | Najgori slučaj | |
Razvrstavanje mjehurića | Ω (N) | Θ (N 2 ) | O (N 2 ) |
Izbor sortiranja | Ω (N 2 ) | Θ (N 2 ) | O (N 2 ) |
Poredak umetanja | Ω (N) | Θ (N 2 ) | O (N 2 ) |
Spajanje sortiranja | Ω (N log N) | Θ (N log N) | O (N log N) |
Poredaj hrpu | Ω (N log N) | Θ (N log N) | O (N log N) |
Brzo sortiranje | Ω (N log N) | Θ (N log N) | O (N 2 ) |
Kao što možemo vidjeti na popisu, QUICK sorta je brža od usporedbe Bubble Sort, Sort Selection, Insertion Sort.
Kako brzo razvrstavanje funkcionira u JavaScript-u?
Korak 1 : Da biste dobili element okretnosti - u bilo kojoj podjeli i osvajanju odabir prave Pivot igra vitalnu ulogu. Stoga obično pokušavamo srednji element matrice dobiti kao Pivot element. Ovo je element odakle dijelimo jedan niz u miru dva za obradu sortiranja.
Korak 2 : Pokrenite lijeve pokazivače kao prvi element ulaza.
Korak 3 : Pokrenite desne pokazivače kao posljednji element ulaznog polja.
Korak 4 : Sada uspoređujemo elemente na lijevom pokazivaču s odabranim elementom okreta i zamjenjujemo vrijednost ako je potrebno prema poslovnim zahtjevima. Zatim usporedimo desni pokazivač s elementom Pivot.
5. korak: pomaknite oba na sljedeći. Svi gornji koraci slijede iznova i iznova koristeći rekurzivni pristup.
Primjer brzog razvrstavanja u JavaScript-u
Ovo je funkcija za brigu o brzom razvrstavanju u JavaScript-u. U ovom slučaju ćemo proslijediti kompletan popis niza kao ulaza i dobit ćemo sortiranu matricu kao izlaz.
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);
Zbog svojih zapanjujućih performansi, većina kodira koristi ovu tehniku razvrstavanja za implementaciju funkcionalnosti ugrađivanja u sortiranju. U raznim programskim jezicima brzo se sortiranje koristi za njegovu funkcionalnost sortiranja. Postoje razni drugi načini za pisanje programa za izvođenje operacija brzog sortiranja, a sve se funkcije susreću do točke koja je Divide and Conquer. Dakle, ovaj Divide and Conquer je pravilo za procesiranje pomoću Quick Sort u JavaScript-u. Ne samo u JavaScript-u, već i u svim programskim jezicima.
Izlaz:
Preporučeni članci
Ovo je vodič za brzo sortiranje u JavaScript-u. Ovdje ćemo raspravljati o tome kako brzo sortiranje djeluje u JavaScriptu, njegovom radu i usporedbi algoritma sortiranja zajedno s primjerom. Možete pogledati i sljedeće članke da biste saznali više -
- Primjeri za uvođenje brzog sortiranja u Javi
- Što je Izjava o slučaju u JavaScript-u?
- Svojstva spajanja Poredaj u JavaScript
- Vrste konstruktora u JavaScript-u
- Poredajte u Python
- Zamjena u PHP-u
- Poredak umetanja u JavaScript
- Rekurzivna funkcija u C
- Rekurzivna funkcija u JavaScript-u