Jak zaimplementować klasę LinkedList od podstaw w Javie?

Opublikowany: 2013-06-19
Samouczek implementacji Crunchify Java LinkedList

Jeśli faktycznie budujesz prawdziwy system produkcyjny, to tak, zazwyczaj użyjesz rzeczy ze standardowej biblioteki, jeśli to, czego potrzebujesz, jest tam dostępne. To powiedziawszy, nie myśl o tym jako o bezsensownym ćwiczeniu.

Dobrze jest zrozumieć, jak to działa, a understanding linked lists jest ważnym krokiem w kierunku zrozumienia bardziej złożonych struktur danych, z których wiele nie istnieje w standardowych bibliotekach.

Istnieją pewne różnice między sposobem tworzenia połączonej listy a sposobem, w jaki robi to interfejs Java Collections API.

Interfejs Collections API próbuje dostosować się do bardziej skomplikowanego interfejsu. Twoja LinkedList zawsze będzie zawierała co najmniej jeden element.

Przy tego rodzaju konfiguracji użyjesz null, gdy potrzebujesz pustej listy. Pomyśl o „następnym” jako o „reszta listy”. W rzeczywistości wiele osób nazwałoby to tail zamiast „następnym”.

Oto schemat pojedynczej połączonej listy:

Crunchify Lista połączona pojedynczo Przykład

Inny musi przeczytać:

  • Jak iterować przez instancję LinkedList w Javie?
  • Java: jak znaleźć środkowy element LinkedList?

Jaki jest najlepszy sposób na utworzenie listy linków w Javie od podstaw?

Oto najprostsza implementacja klasy LinkedList w Javie.

LinkedList w Javie od podstaw — samouczek Crunchify

Kilka rzeczy:

Tutaj inicjujemy Node tylko podczas adding 1st element .

Wynik:

Udoskonalenia tej implementacji obejmują utworzenie z niej double-linked list , dodanie metod do insert i delete od środka lub końca, a także dodanie metod get i sort .

Odwołana odpowiedź z Stack Overflow autorstwa Laurence'a Gonsalvesa. Może zainteresuje Cię lista wszystkich samouczków Java.