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)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.