Przykład 1:
Wybór sortuje iterację elementów w określonej nieporadowanej tablicy. Minimalny element jest wybierany i przeniesiony do posortowanej podoładowania w każdej iteracji sortowania selekcji. Do sortowania wyboru jest używany następujący program do sortowania tablicy w kolejności rosnącej:
Klasa „Ascendingselectionsort” jest zbudowana w programie Java, o którym wspomniano wcześniej. Ta klasa jest zaimplementowana z funkcją pustki „sortowania”, w której tablica liczb całkowitych „MyArray” jest przekazywana parametr. Wewnątrz funkcji „sortowania” decylujemy obiekt „tablizy”, aby uzyskać rozmiar tablicy z metody długości. Ponadto, wdrażamy metodę pętla, która iteruje granicę nieprojektowanej tablicy, pojedynczo.
Następnym krokiem jest opracowanie obiektu o nazwie „min”, który lokalizuje nieprojektowany element tablicy o najniższej wartości. Inne do pętli jest wywoływane w celu uzyskania pozycji indeksu minimalnego elementu z tablicy. For pętka iteracja od „i+1” do ostatniego elementu tablicy. Następnie mamy zastępcę IF, aby sprawdzić, czy „myarray [j]” jest mniejszy niż „myarray [min]”, czy nie. Jeśli tak, to indeks minimalny zostanie zwiększony. Następnie stosujemy algorytm zamiany, zamieniając minimalną wartość tablicy z pierwszą wartością. Tam mamy inną funkcję, „printArray”, która jest ustalona do wydrukowania sortowanej tablicy z sortowania wyboru. Drukujemy posortowaną tablicę, iterując każdy element tablicy przez pętlę.
Ostatecznie testujemy implementację sortowania selekcji wewnątrz metody Main (). Tutaj definiujemy obiekt „OBJ” dla klasy „Ascendingselectionsort”, a także inicjujemy tablicę „MyArray” z elementami liczb całkowitych. Następnie używamy funkcji „sortowania” za pomocą tej tablicy jako parametru do sortowania tablicy, która następnie została wydrukowana na konsoli.
Technika sortowania selekcji służy do wytworzenia następującej tablicy, która jest sortowana w kolejności rosnącej:
Przykład 2:
Sort wyboru można również użyć do tablicy, która nie jest ustawiona. Użytkownik najpierw wchodzi w rozmiar tablicy. Następnie wchodzi do elementu wewnątrz tablicy z określoną tablicą.
W poprzednim programie Java zdefiniowaliśmy klasę „userDefinedSelectionsort”. Klasa jest zdefiniowana za pomocą funkcji „zamiany” i przyjmuje „x []”, „i” i „j” jako parametry. Elementy tablicy są porównywane najpierw, a następnie zamieniane na zmienną „Temp”. Następnie mamy inną funkcję - „userDefinedSelectionsort” - gdzie tablica „x []” i rozmiar obiektu są zdefiniowane jako parametr. Ta funkcja jest wywoływana z zagnieżdżoną for pętką. Najpierw przemierzyliśmy nieustanną tablicę od pierwszego indeksu do ostatniego.
Następnie przemierzamy nieustanną tablicę z „i+1” do ostatniej wartości tablicy, aby uzyskać minimalny element z nieporządonej tablicy i aktualizuje minimalny indeks. Następnie nazywamy funkcję „zamiany”, aby zamienić x [i] z x [min_index]. Następnie mamy formularz metody main (), w którym przyjmujemy dane wejściowe od użytkownika, tworząc obiekt „wejście” i wywołując system w metodzie. Obiekt „S” oznacza długość tablicy, która wykorzystuje metodę NextIt () do odczytania następnego tokenu z wartości wejściowej przez użytkownika. Długość tablicy jest zadeklarowana wewnątrz tablicy „x []”, a następnie uzyskiwana jako wartość tablicy w rozmiarze tablicy. Początkowa tablica jest wyświetlana najpierw, a następnie sortowana tablica z metody sortowania wyboru jest przemierzana i wyświetlana.
W kompilacji poprzedniego kodu terminal najpierw poprosił o wprowadzenie rozmiaru tablicy. Po zdefiniowaniu rozmiaru tablicy użytkownik wprowadza losowe elementy. Następnie sortowanie wyboru jest wykonywane. Początkowy nieprojektowany tablica i tablica posortowana w wyborze są wyświetlane następująco:
Przykład 3:
Następnie sortowanie wyboru jest wykonywane na liście pojedynczo połączonej. Technika obejmuje wymianę połączonego węzła listy zamiast danych wewnątrz węzłów.
W poprzednim programie mamy klasę Java „LinkedListselectionsort”, w której definiujemy inną klasę, „węzeł”. Klasa „węzła” jest zadeklarowana za pomocą obiektu „MyData” i obiektu węzła, „Next_node”. Następnie mamy funkcję „swapnodes”, w której bieżący węzeł „curr_n1” jest zamieniany na inny bieżący węzeł „curr_n2” bez zamiany elementów węzła na listy połączonej. Najpierw zrobiliśmy „curr_n2”, a następnie dostosowuje linki. Następnie zamieniamy węzły na zmienną tymczasową.
Tam mamy kolejną funkcję „SelectionSort”, która wykorzystuje podejście SORP -SORD RECURSIVESE SORP. Zastanawiamy się, czy lista połączona ma węzeł. Następnie definiujemy węzeł wskaźnika „min_node” dla minimalnej wartości danych i wskaźnika węzła „prev_min”, aby mieć poprzednią wartość danych węzła. For pętka przemierza wszystkie węzły połączonej listy i zwiększa minimalny węzeł i poprzedni węzeł. Następnie stosujemy warunek - jeśli Min_Node i węzeł głowy są różne, zamieniamy Min_Node z węzłem głównym. Pozostała lista połączona jest sortowana rekurencyjnie, umieszczając „głowę.Next_node ”w funkcji selekcji.
Ponadto tworzymy funkcję „sortnodes”, która weryfikuje, że podana lista połączona nie powinna być pusta i sortować listę za pomocą funkcji SelectionSort (). Następnie mamy następną funkcję, która jest „naciskiem”, aby dodać węzeł do pozycji początkowej listy połączonej. Definiujemy obiekt „newNode”, aby przydzielić węzeł i wstawiać dane do tego węzła. Następnie łączymy odniesienie główne z nowym węzłem i realokacje odniesienia do nowego węzła. Następnie tworzymy funkcję „Displaylist”, aby wydrukować linkowaną listę za pośrednictwem pętli When.
Mamy metodę main (), w której lista połączona jest inicjowana za pomocą metody push. Niezwłaniowe elementy listy połączonych zostaną wydrukowane. Następnie wywołujemy funkcję sortnodes (), która przyjmuje obiekt główny jako parametr do wykonania operacji sortowania wyboru. Polisowana lista jest drukowana metodą displaylist (), która również przyjmuje „głowę” jako argument.
Wyświetlana jest oryginalna lista połączona. Następnie posortowana lista połączona jest wydrukowana w następujący sposób:
Wniosek
Sort wyboru zasadniczo określa, gdzie element zaczyna się od innych elementów. Sort wyboru w Javie jest stosowany, gdy małe listy wymagają sortowania. Wpływa również na szybkość pisania do pamięci, zwłaszcza pamięć flash. Podstawową koncepcją korzystania z sortowania wyboru w Javie jest podzielenie tablicy na posortowane i nieprojektowane sekcje, a następnie sortowanie tablicy za pomocą porównań. Przykłady sortowania selekcji zostały wykazane z domyślnym i drugim przypadkiem.