Wybór sortowania w JavaScript

Wybór sortowania w JavaScript
Algorytm sortowania wyboru sortuje listę, znajdując najmniejszą liczbę z listy niepohamowanej i przenosząc ją na początek listy. Sortowanie wyboru dzieli faktyczną listę na dwie listy, jedną dla sortowanych liczb, podczas gdy druga lista dotyczy pozostałych niepotrzebnych liczb, początkowo uważa całą listę za listę nieporadowaną.

Sortowanie wyboru działa na bardzo podstawowej filozofii, jaką jest znalezienie najmniejszej liczby w tablicy i zamiana jej na początkową pozycję (indeks 0.), a następnie ponownie znajdź drugą najmniejszą liczbę z pozostałej nieustannej tablicy i umieścić ją na odpowiednią pozycję (( Pierwszy indeks) i tak dalej, w ten sposób wreszcie otrzymamy posortowaną tablicę.

W tym artykule omówimy, jak działa wybór, w tym celu rozważymy przykład, aby wyjaśnić każdy krok do sortowania tablicy za pomocą sortowania selekcji.

Jak działa wybór

Na przykład rozważ następującą tablicę i sortować ją za pomocą sortowania wyboru:

Krok 1

Początkowo mamy tablicę pięciu elementów, przy indeksie zero mamy wartość „9”, i porównamy ją z następnym indeksem, jeśli wartość pierwszego indeksu jest mniejsza niż wartość zero-index, to następny Porównuje wartość indeksu 1 z pozostałymi elementami tablicy.

Porównujemy „1” z „8”, „1” jest mniej niż „8”, więc ponownie porównamy „1” z wartością następnego indeksu (3. indeks),

„1” jest mniej niż „2”.

Oznacza to, że ponownie „1” zostanie porównane z ostatnim indeksem, w którym znaleźliśmy wartość „4”, która jest również większa niż „1”.

Więc krok po kroku porównujemy 1 z każdym elementem tablicy, w wyniku czego byliśmy świadkami, że „1” jest najmniejszą liczbą wśród wszystkich elementów tablicy.

Więc w końcu mamy sortowaną wartość dla indeksu 0.

Krok 2:

Teraz po kroku 1 wartość na zero indeksu jest sortowana, więc mamy teraz dwie sekcje, po lewej stronie posortowana tablica i po prawej stronie niepohamowana tablica:

Sortujemy nieprojektowaną tablicę, więc początkowo porównamy indeks jeden z indeksem dwa, stwierdziliśmy, że „9” jest większe niż „8”

Ponieważ „8” jest mniej niż „9”, więc odtąd porównamy wartość indeksu 2, która jest „8” z innymi elementami tablicy. Teraz „8” jest porównywane z „2”

„2” jest mniej niż „8” Dlatego w następnej iteracji porównamy „2” z ostatnimi elementami tablicy. Porównaj „2” z „4”:

Tak więc, „2” jest najmniejszym elementem spośród wszystkich nieprojektowanych elementów tablicy, więc zostanie zamieniony na drugi indeks, wynikowy tablica po drugim kroku będzie:

Krok 3

Do tej pory mamy 2 elementy, a trzy elementy są nieporządkowane. Teraz sortujemy pozostałe nieprojektowane elementy tablicy. W tym celu porównaj wartość indeksu 2 z wartością indeksu 3, więc nie będzie żadnej zmiany, ponieważ „8” jest mniejsze niż „9”. W następnej iteracji porównujemy „8” z wartością ostatecznego indeksu.

Tutaj „4” jest mniej niż „8”, a „4” to ostatni element tablicy, dlatego „4” zostanie zamieniony na „8”: a zaktualizowana tablica będzie:

Krok 4:

Teraz pierwsze trzy elementy są sortowane, porównaj wartość indeksu 3 z wartością indeksu 4, tutaj „9” jest większa niż „8” i nie ma więcej elementu w tablicy dla porównania, dlatego zamieniliśmy się Wartość wskaźnika pierwszego z wartością trzeciego indeksu:

Wreszcie, otrzymujemy posortowaną tablicę, jeśli ktoś zostanie poinstruowany, aby sortować w kolejności malejącej, to zostanie wykonane w odwrotnej kolejności.

Jak zaimplementować sortowanie wyboru w JavaScript

Teraz zakończymy działanie selekcji w kategoriach każdego kroku, a następnie wdrożymy tę samą koncepcję w JavaScript.

Po ukończeniu pierwszego kroku otrzymujemy minimalną wartość przy 0. indeksie, w drugim etapie druga najmniejsza liczba jest przesunięta na pierwszy indeks. Podobnie otrzymujemy odpowiedni numer we właściwym indeksie po ukończeniu trzeciego i czwartego kroku.

Nie musimy wykonywać sortowania dla ostatniego indeksu, ponieważ pozostało nam tylko jeden element, a jeśli wszystkie wcześniejsze elementy w tablicy zostaną sortowane, ostatni element zostanie również posortowany.

Stąd doszliśmy do wniosku, że potrzebujemy suma „N-1” Kroki, aby posortować tablicę.

Teraz wdrożymy tę koncepcję wyboru w JavaScript:

funkcja selekcja_sort (input_array)
Niech array_length = input_array.długość;
dla (niech i = 0; iNiech najmniejszy = i;
dla (niech j = i+1; j if (input_array [j] najmniejszy = j;


if (najmniejszy != i)
niech temp_val = input_array [i];
input_array [i] = input_array [najmniejszy];
input_array [najmniejszy] = temp_val;


return input_array;

const input_array = [9, 1, 8, 2, 4];
selekcja_sort (input_array);
konsola.log („Final Sorted Array:”, Input_Array);

W początkowej części kodu używamy ".długość" właściwość, aby sprawdzić długość faktycznej tablicy i przechowywać ją w zmiennej „array_length”, a następnie iterujemy pętlę, aż osiągnie indeks „n-1”. W pętli początkowo uważamy, że bieżący wskaźnik ma najmniejszą wartość, dlatego ustawiamy „najmniejsze = i”, a następnie używamy kolejnej pętli do porównania bieżącej wartości z pozostałymi wartościami tablicy, a pętla będzie Zacznij od „I+1”. Następnie piszemy kod do zamiany elementu, gdy znajdziemy najmniejszy element w tablicy.

Wreszcie wykorzystaliśmy konsola.dziennik() Funkcja wyjścia na konsoli przeglądarki:

Wniosek

W algorytmie sortowania selekcji znajdujemy najmniejszy element. Przesuwamy go do indeksu początkowego, a następnie przesuwamy drugi najmniejszy element do pierwszego indeksu i tak dalej. W rezultacie dostajemy tablicę, w której posortowane elementy są obecne po lewej stronie, a elementy nieporządkowane są obecne po prawej stronie tablicy. W ten sposób konstruowana jest ostateczna tablica posortowana za pomocą sortowania selekcji w JavaScript.

W tym artykule nauczyliśmy się, jak sortować tablicę za pomocą selekcji w JavaScript. Rozumiemy logikę algorytmu sortowania selekcji, rozważając przykład i wyjaśniając jego działające krok po kroku.