Wybór Sortuj JavaScript

| | | | | | | |

Wybór sortowania Java znajduje najmniejszy element na liście i przenosi tę wartość na górę listy. Dzieje się tak wielokrotnie, dopóki wszystkie pozycje na pierwszej liście nie zostaną posortowane. Sortowanie wyboru zwraca posortowaną listę.

Jak sortowałeś listę w Javie? Masz kilka opcji. Powszechną opcją jest sortowanie według wyboru.

W tym przewodniku omówimy, czym jest sortowanie i jak działa. Pokażemy Ci również, jak stworzyć pewien rodzaj selekcji w Javie, abyś wiedział, jak stworzyć własny. Zacznijmy!

Jaki rodzaj wyboru Java?

Wybór sortowania wielokrotnie wyszukuje minimalny element na liście i przenosi go na początek nieposortowanych elementów na liście. Ten proces powtarza się dla każdego elementu na liście, dopóki lista nie zostanie posortowana.

Pierwszy element na liście jest uważany za najmniejszy. Ta pozycja jest porównywana z następną. Jeśli następny element jest mniejszy, zamień elementy. Algorytm ten znajduje minimalny element, aż do osiągnięcia ostatniego elementu. Następnie nasz program przenosi najmniejszy element na górę listy.

W pewnym rodzaju selekcji lista składa się z dwóch części:. Lista posortowana i lista nieposortowana. Gdy elementy są sortowane, przesuwają się one z podtabeli do podtabeli bez posortowania.

Możesz posortować listę w kolejności rosnącej lub malejącej.

W przypadku korzystania z funkcji sortowania według wybór?

Typy wyboru są optymalne, gdy trzeba posortować małą listę. Rzeczywiście, istnieją wydajniejsze sposoby sortowania dużych list. Algorytmy, takie jak sortowanie przez scalanie , sortowanie z wstawianiem i sortowanie szybkie, są bardziej wydajne niż sortowanie przez wybieranie w programowaniu w Javie

Jeden rodzaj selekcji działa najlepiej, gdy Wymagane jest sprawdzenie wszystkich elementów tablicy. Miałoby to miejsce, gdyby posortowano kilka lub żaden z elementów listy. Sortowanie przez wybór generalnie zastępuje bąbelek sortowania, który jest łatwiejszy do zrozumienia.

Jak działają typy wyboru?

Nie ma sensu próbować zaimplementować algorytm w Javie bez uprzedniego poznania czego chodzi o to, aby nasz algorytm działał. Zacznijmy od wykonania kroków selekcji, aby posortować listę w kolejności

Rozważ następujące nieuporządkowana tabela:

17 14 9 12

Sortowanie przez wybór ustawia pierwszy element jako najmniejszy na liście. wartość tymczasowa, która zmienia się za każdym razem, gdy nasz program wykonuje porównanie. Ta wartość jest przechowywana we własnej zmiennej.

minimum = 17


17 14 9 12

Element „minimum” jest porównywany z drugim elementem Ten element znajduje się w nieuporządkowanej części sieci; .. każdy element po posortowanych elementach jest nieposortowany

Powiedz, że drugi element jest mniejszy niż „item” m inimo ”. W tym przypadku wartość elementu „minimum” elementu jest ustawiona na wartość drugiego elementu. 14 jest mniejsze niż 17, nasza nowa wartość minimalna staje się 14.

minimum = 14


17 14 9 12

Ten proces jest powtarzany dla każdego elementu w naszym wykazie. 9 jest mniejsze niż 14. Tak więc „minimalna” wartość staje się 9. 9 jest nie mniejsza niż 12, więc minimalna wartość pozostaje taka sama.

Po iteracji nasza lista wykazała, że 9 jest najmniejszą liczbą. Ten element jest przeniesiony na początek listy:

Ten proces zaczyna się od pierwszego nieposortowanego elementu. Tak więc nasza następna seria porównań zaczynałaby się od 17:

  • 17 jest równe minimum
  • Nasz program porównuje 17 do 14. Wartość „minimum”. Staje się 14.
  • Nasz program porównuje 14 do 12. wartość "minimum" staje się 12.
  • Nasz program przechodzi 12 na końcu posortowanych pozycji na liście.

Nasza lista wygląda tak:

9 17 14 12
9 12 17 14

Ten proces powtarza się aż do uporządkowania naszej listy. Gdy nasz algorytm zakończy działanie, zwracana jest następująca lista:

9 12 14 17

Nasza lista jest posortowana w porządku rosnącym.

Jak utworzyć rodzaj selekcji w Javie

Jedną rzeczą jest wiedzieć, jak działa selekcja; to kolejna konstrukcja. Kod pozostawiający wybrany porządek sortowania w Javie, który wykorzystuje logikę omówioną w przewodniku

Ustawienia uruchom program

Utwórz plik o nazwie selection_sort.java. Zaczniemy od zaimportowania biblioteki Java Arrays do naszego kodu:

Używamy tej biblioteki w dalszej części naszego kodu. używamy go do konwersji naszego posortowanego zakresu na ciąg znaków, aby móc go wydrukować w konsoli.

Utwórz funkcję sortującą

Następnie zadeklarujemy klasę i utworzymy metodę aby dokonać wyboru sortowania Dodaj następujące elementy do pliku selection_sort.java:.

W naszej klasie zdefiniowaliśmy metodę o nazwie sortNumbers, która wykonuje nasze sortowanie. Zacznijmy od obliczenia długości naszej tablicy. Przechowujemy długość naszej tablicy w zmiennej Java .

Następnie tworzymy LUKRATYWNĄ Pętla Java . Ten cykl przechodzi przez każdą pozycję na naszej liście. Wewnątrz tej pętli znajduje się element minimum, który jest pierwszym elementem na liście

Następnie uruchamiamy kolejną pętlę, aby porównać minimalny element z każdym elementem na liście.

Jeśli liczba odczytana przez pętlę jest mniejsza niż minimalna liczba, wartość „minimalna” staje się tą liczbą. W naszej pętli „liczba” reprezentuje wartość indeksu liczby, z którą porównujemy wartość minimalną.

Gdy liczba minimalna zostanie porównana z każda liczba na liście, nasza pętla dla wewnętrznych przystanków. Minimalna liczba jest następnie przesuwana po wszystkich posortowanych liczbach na liście.

Wywołaj funkcję sortowania

Nasz kod jeszcze nic nie robi . Nie wywołaliśmy jeszcze naszej klasy i podaliśmy listę do sortowania

W metodzie sortNumbers na liście dodaj następujący kod:.

W naszej głównej metodzie zadeklarowaliśmy listę elementów typu o nazwie toSort. Następnie inicjujemy instancję naszej klasy SelectionSort o nazwie newSort. Używamy go do wywołania naszej metody sortNumbers, która sortuje wartości w tablicy toSort

Po metodzie sortNumbers zostanie wykonane, wyświetlamy posortowaną tablicę w konsoli. Robimy to za pomocą metody Arrays.toString(), która konwertuje naszą tablicę na listę ciągów.

Uruchommy nasz kod:

Nasza lista została posortowana

Wybierz Sortuj Java: Sortuj wartości „Ęã‚Ęãw porządku malejącym

Warto zauważyć, że możesz sortować wartości. w kolejności malejącej Aby to zrobić, zastąp następujący wiersz kodu w metodzie sortNumbers:

Z tym kodem:

Ten kod sprawdza, czy wartość „minimum” jest większa niż wartość dostępu dla pętli. Oznacza to, że wartość „minimum” będzie odzwierciedlać najwyższą wartość na liście, a nie najniższą.

Aby uniknąć nieporozumień, należy zmienić nazwę „minimum” na „maksimum”, jeśli sortujesz listę w w porządku malejącym.

Tak. Dostroiłeś listę w Javie za pomocą sortowania według algorytmu wyboru.

Jak skomplikowane jest sortowanie według wyboru Javy?

Istnieją trzy złożoności czasowe, które musimy wziąć pod uwagę podczas oceny algorytm. najlepszy z przypadków, najgorszy przypadek i średni przypadek

sortowanie złożoności wyboru najlepszego, średniego i najgorszego przypadku O (n ^ 2). Oznacza to, że algorytm zajmie więcej czasu w miarę wzrostu liczby elementów na liście.

Czy jesteś zdezorientowany złożonością algorytmów? Zapoznaj się z naszą dwuczęściową serią poświęconą notacji Big O . To jest notacja, której używamy do opisania złożoności algorytmów.

Wnioski

Sortowanie przez selekcję jest skutecznym sposobem sortowania list danych. Działają, wybierając najmniejszy element z nieposortowanej listy i przenosząc go na górę nieposortowanej listy. Ten proces powtarza się, dopóki lista nie zostanie posortowana.

Czy - kim chcesz zostać programistą Java? Zapoznaj się z naszym przewodnikiem nauki języka Java . W tym przewodniku znajdziesz najlepsze wskazówki i porady dotyczące najlepszych kursów online i zasobów edukacyjnych .