Jak sortować połączoną listę w Javie

Autor: Monica Porter
Data Utworzenia: 21 Marsz 2021
Data Aktualizacji: 25 Listopad 2024
Anonim
19. Kurs Java dla początkujących - Kolekcje: Lista
Wideo: 19. Kurs Java dla początkujących - Kolekcje: Lista

Zawartość

Jak zorganizować połączoną listę w Javie. Zamknięta lista jest jednym z głównych typów struktur danych w świecie programowania. Jest to organizacja węzłów, która zawiera dane i odniesienia wskazujące na następny węzeł. Aby posortować połączoną listę w Javie, istnieje klasa list, która współpracuje ze strukturą Collections, która implementuje algorytmy jako porządek.


Instrukcje

Organizacja połączonej listy w Javie (obraz przesłuchania przez danimages z Fotolia.com)

    Sortuj połączoną listę w Javie

  1. Zadeklaruj listę połączoną, tworząc nowy obiekt LinkedList i przypisując zmienną LinkedList. Lista LinkedList pochodzi z ogólnej klasy List, więc każda metoda, która akceptuje List, również zostanie zaakceptowana przez obiekt LinkedList. „” LinkedList l = nowy LinkedList (); ”„

  2. Dodaj obiekty tego samego typu (takie jak liczby całkowite) do listy. Mogą to być obiekty dowolnego rodzaju, ale aby posortować połączoną listę, wszystkie muszą być tego samego typu.

  3. Użyj metody List.addFirst, aby wstawić nowe obiekty na górze listy, tak aby wszystkie dodane obiekty były w odwrotnej kolejności. Jeśli chcesz dodać je do końca listy, użyj metody List.addLast. "" list.addFirst (1); list.addFirst (3); list.addFirst (2); "


  4. Użyj iteratora, aby przeglądać listę i drukować ją przed i po zobaczeniu, co robi metoda sortowania. „” dla (Iterator i = list.iterator (); i.hasNext ();) {System.out.println (i.next ());} ”

    Sortuj za pomocą domyślnych i niestandardowych komparatorów

  1. Sortuj listę za pomocą domyślnego komparatora. Komparator to obiekt, który porównuje dwa obiekty. Domyślny obiekt komparatora używa mniejszego operatora, więc lista jest uporządkowana w porządku rosnącym. Aby posortować listę, użyj statycznej metody Collections.sort. "" Collections.sort (lista); ""

  2. y) {return -1; "> Zamień listę za pomocą niestandardowego porównania, pisząc klasę, która implementuje interfejs porównania i przekazując ją do instancji jako argument porządkujący Klasa implementująca komparator musi tylko implementować prostą „klasa publiczna GreaterThan implementuje komparator else if (x == y) {return 0;} else {return 1;}}}”


  3. Użyj wywołania do Collections.sort, przekazując nowe wystąpienie GreaterThan jako drugi argument. Ponieważ obiekty, które są większe, będą przed innymi, lista zostanie posortowana w porządku malejącym zamiast kolejności rosnącej. Alternatywnie, jeśli posortujesz listę obiektów z niestandardowej klasy, którą sam wpisałeś, ta klasa może zaimplementować interfejs Porównywalny zamiast używać oddzielnej klasy Komparatora. "" Collections.sort (lista, nowy GreaterThan ()); ""

Jak

  • Problemem jest użycie liczby całkowitej do iteracji w obwodzie i metody List.size (). Iterowanie zamkniętej listy jest kosztowną operacją obliczeniową. Używając operatora indeksu (jak l [2]), jak w każdym poleceniu, Java musi iterować po liście, aż osiągnie indeks 2. W przypadku małych list jest to jednak problem z czymś dużym, użycie operatora indeksu do iteracji zmienia się w coś, co wymaga dużo zasobów.
  • Bez względu na sposób implementacji obiektu List, ponieważ LinkedList implementuje ten sam interfejs.
  • Metoda porównania powinna powrócić do -1, jeśli arg0 jest uporządkowane przed arg1, 0, jeśli jest uporządkowane równo, i 1, jeśli arg1 jest uporządkowane przed arg0.

Uwaga

  • Obiekt iteratora zapewnia, że ​​każdy węzeł na liście odwiedza tylko raz. Jest to ważne, aby pamiętać, ponieważ odwiedzanie nas bez potrzeby może nadużywać struktur danych do punktu, w którym program działa nieprawidłowo.

Czy można żyć bez prostaty?

Tamara Smith

Listopad 2024

Protata to gruczoł, który wydziela płyn, który przyczynia ię do mękiego proceu rozrodczego. Uuwanie gruczołu krokowego jet zwykle wykonywane, aby zapobiec rozprzetrzenianiu ię raka protaty. ...

Oznaki, że mops zacznie rodzić

Tamara Smith

Listopad 2024

Mopy i inne ray pów wykazują kilka oznak, że zaraz zaczną rodzić. Właściciel zwierzęcia monitoruje te ygnały, aby przygotować ię do rozpoczęcia porodu. Ciąża trwa około 63 dni lub dziewięć tygodn...

Więcej Szczegółów