Java LinkedList-Beispiel

LinkedList enthält eine Gruppe von Elementen in Form von Knoten. Die verknüpften Listen werden zum Speichern von Datenarrays verwendet. Es handelt sich um eine lineare Datenstruktur, in der jedes Element ein separates Objekt ist.

  • LinkedList enthält eine Reihe von Knoten.
  • Jeder Knoten enthält einige Daten und eine Verbindung zum nächsten Knoten.
  • Wenn der Link des nächsten Knotens leer ist, ist er am Ende der Liste angelangt.
  • In LinkedList ist die Anzahl der Knoten nicht festgelegt, sie kann je nach Benutzerwunsch geändert werden.
  • Eine verknüpfte Liste ist dasselbe wie eine Array-Liste, der Unterschied besteht jedoch darin, dass ein Array einen festen Typ hat und eine verknüpfte Liste größer werden kann, wenn der Liste weitere Elemente hinzugefügt werden müssen.
  • Die verknüpfte Liste ist eine Implementierung der Listenschnittstelle.

lesen Sie auch:

  • Unterschied zwischen ArrayList, Vector und LinkedList in Java
  • Anmerkungen in Java 5.0

Sammlungsdiagramm von LinkedList

Beispiel für ein Java-LinkedList-Sammlungsdiagramm

LinkedList-Funktionen

  • Die verknüpfte Liste enthält doppelte Elemente.
  • Verknüpfte Listen behalten die Einfügereihenfolge bei, was bedeutet, dass das erste Element an der ersten Position hinzugefügt wird.
  • Die verknüpfte Liste unterstützt keinen wahlfreien Zugriff zum Abrufen von Werten.
  • Die verknüpfte Liste ist nicht synchronisiert, was bedeutet, dass sie ohne externe Synchronisierung nicht von mehreren Threads gemeinsam genutzt werden kann.

Vorteile der verknüpften Liste

  • In einer verknüpften Liste ist es einfach, ein Element in die Liste einzufügen und daraus zu löschen.
  • Eine verknüpfte Liste ist eine dynamische Datenstruktur.
  • Verknüpfte Listen können größer werden, wenn der Liste weitere Elemente hinzugefügt werden müssen.
  • Lineare Datenstrukturen wie Stack, Queue können einfach mithilfe einer verknüpften Liste implementiert werden.

Nachteile der verknüpften Liste

  • In der verknüpften Liste ist kein wahlfreier Zugriff zulässig.
  • In der verknüpften Liste ist zusätzlicher Speicherplatz für den Zeiger erforderlich.
  • Das Rückwärtstraversieren ist in verknüpften Listen schwierig.

LinkedList-Syntax

LinkedList< String> myList = new LinkedList< String>();

In der obigen Syntax enthält die LinkedList Parameter vom Typ String und erstellt ein neues LinkedList-Objekt mit dem Operator „new“.

Arten von LinkedList

Die LinkedList enthält die folgenden Typen.

  • Einfach verknüpfte Liste
  • Doppelt verknüpfte Liste
  • Zirkuläre verknüpfte Liste
  • Einfach verknüpfte Liste

    Einfach verknüpfte Listen sind die Art der Datenstruktur. In dieser Art von verknüpfter Liste zeigt jeder Knoten auf den nächsten Knoten und der Endknoten oder Endknoten zeigt auf nichts. Diese Liste speichert keinen Verweis auf den vorherigen Knoten.

    Beispiel für eine Java Singly LinkedList

    Jedes Element in dieser Liste besteht aus zwei Elementen: den Daten und dem Verweis auf den nächsten Knoten, der letzte Knoten zeigt auf Null. Die obige Abbildung zeigt die Funktionsweise einer einfach verknüpften Liste. Dabei zeigt jeder Knoten A, B und C auf den nächsten Knoten und der Endknoten zeigt auf nichts oder null.

    Doppelt verknüpfte Liste

    In dieser Art von verknüpfter Liste zeigt jeder Knoten sowohl auf den nächsten als auch auf den vorherigen Knoten. In einer doppelt verknüpften Liste zeigen sowohl der Kopfknoten als auch der Endknoten auf nichts. Dies ist nützlich, um einen Knoten nach hinten zu verschieben, den wir nicht von Anfang an haben möchten. Eine doppelt verknüpfte Liste ermöglicht das Durchlaufen der Liste vom Ende bis zum Kopf.

    Java Double LinkedList-Beispiel

    In dieser Liste hat jeder Knoten zwei Referenzen, eine für den nächsten Knoten und eine andere für seinen vorherigen Knoten. In der obigen Abbildung zeigt jeder Knoten A, B und C auf seinen nächsten Knoten und seinen vorherigen Knoten. Der Endknoten oder Schwanzknoten zeigt auf nichts.

    Zirkuläre verknüpfte Liste

    Bei diesem Typ einer verknüpften Liste wird eine zirkuläre Liste erstellt, indem der erste und der letzte Knoten verknüpft werden. Bei diesem Typ von Kopfelementen zeigt der vorherige Zeiger auf das Schwanzelement und der nächste Zeiger des Schwanzelements zeigt auf das Kopfelement.

    Beispiel für eine Java Circular LinkedList

    In dieser Liste zeigt der letzte Knoten der Liste zurück auf den ersten Knoten der Liste. In der obigen Abbildung zeigt jeder Knoten aufeinander und der Schwanzknoten zeigt auf den Kopfknoten.

    LinkedList-Konstruktoren

    • LinkedList( ): Dieser Konstruktor erstellt eine leere verknüpfte Liste
    • LinkedList(Sammlung C): Dieser Konstruktor wird verwendet, um die Liste zu erstellen, die die Elemente der angegebenen Sammlung enthält.

    LinkedList-Methoden

    Methodenbeschreibung

    Boolean addAll(Collection c)Mit dieser Methode werden die Elemente in der angegebenen Sammlung am Ende der Liste in der Reihenfolge hinzugefügt, in der sie vom Iterator der angegebenen Sammlung zurückgegeben werden.
    Boolean add(object o)Mit dieser Methode werden alle Elemente in der angegebenen Sammlung am Ende der Liste hinzugefügt.
    boolean addAll(int index, Collection c)Es fügt alle Elemente der Sammlung beginnend an der angegebenen Position in die LinkedList ein.
    void add(int index, Object element)Diese Methode kann ein angegebenes Element an der angegebenen Position in der verknüpften Liste einfügen.
    boolescher Wert „remove(object o)“Es entfernt das erste Vorkommen des angegebenen Elements aus der Liste.
    Element entfernen (Objekt o)Diese Methode kann ein angegebenes Element an der angegebenen Position in der verknüpften Liste entfernen.
    void klar()Mit dieser Methode können alle Elemente aus der verknüpften Liste entfernt werden.
    boolean enthält(Objekt o)Es gibt „true“ zurück, wenn die verknüpfte Liste das angegebene Element enthält.
    void addFirst(Object o)Mit dieser Methode wird das Element an der ersten Position der verknüpften Liste eingefügt.
    void addLast(Object o)Diese Methode fügt das angegebene Element am Ende der verknüpften Liste hinzu.
    Objekt get(int index)Diese Methode gibt das Element an der angegebenen Position in der LinkedList zurück.
    Objekt getFirst()Diese Methode gibt das erste Element in der verknüpften Liste zurück.
    Objekt getLast()Diese Methode gibt das letzte Element in der Liste zurück.
    int indexOf(Object o)>Es gibt das erste Vorkommen des angegebenen Elements in der Liste zurück oder -1, wenn das Element nicht in der Liste gefunden wird.
    int lastIndexOf(Object o)Es gibt das letzte Vorkommen des angegebenen Elements in der Liste zurück oder -1, wenn das Element nicht in der Liste gefunden wird.
    ListIterator listiterator(int index)Es gibt einen Listeniterator des Elements in der Liste zurück, beginnend an der angegebenen Position in der Liste.
    int-GrößeEs gibt die Anzahl der Elemente in der verknüpften Liste zurück.
    Objekt entfernen(int index)Es entfernt das Element in der Liste an der angegebenen Position.
    Objekt removeFirst()Es entfernt das erste Element aus der verknüpften Liste.
    Objekt removeLast()Es entfernt das letzte Element aus der verknüpften Liste.
    Objekt[] zu Array()Es wandelt die verknüpfte Liste in ein Array vom Typ Object-Klasse um. Alle Elemente in der Liste werden in der richtigen Reihenfolge gespeichert.
    Objekt[] toArray(Objekt [] A)Es wird zurückgegeben, dass alle Elemente in der Liste in der richtigen Reihenfolge gespeichert sind. Der Ausführungstyp des zurückgegebenen Arrays ist der des angegebenen Arrays.
    Objektsatz (int-Index, Objektelement)Es ersetzt das Element an der angegebenen Position in der Liste durch das angegebene Element.

    Einfaches Beispiel für LinkedList

    package mypackage;
    
    import java.util.LinkedList;
    
    public class LinkedlistExample {
    
        public static void main(String a[]){
    
            LinkedList<String> ll = new LinkedList<String>();
            ll.add("Sachin");
            ll.add("Ganguly");
            ll.add("Raina");
            ll.add("Dhoni");
            System.out.println(ll);
            System.out.println("Size of the linked list: "+ll.size());
            System.out.println("Is LinkedList empty? "+ll.isEmpty());
            System.out.println("Does LinkedList contains 'Raina'?  "+ll.contains("Raina"));
        }
    }
    
    • LinkedList ll = new LinkedList(); Diese Zeile definiert die Schnittstelle für verknüpfte Listen, die zum Erstellen eines neuen LinkedList-Objekts mit dem neuen Operator verwendet wird.
    • Wir können die Methode ll.add() verwenden, um die Elemente in der verknüpften Liste hinzuzufügen, wobei ll das Objekt ist.
    • System.out.println(ll); In dieser Zeile werden die Elemente in der verknüpften Liste angezeigt.
    • Mit der Methode ll.size() können wir die Gesamtgröße der Liste anzeigen; Um zu überprüfen, ob die verknüpfte Liste leer ist oder nicht, verwenden wir die Methode ll.isEmpty() und um den angegebenen Inhalt in der Liste zu überprüfen, verwenden wir die Methode ll.contains().

    Wenn Sie das obige Beispiel ausführen, erhalten Sie die folgende Ausgabe:

    Java Simple LinkedList-Beispiel

    Beispiel mit LinkedList-Methoden

    
    package mypackage;
    
    import java.util.LinkedList;
    
    public class LinkedlistMethod {
    
       public static void main(String args[]) {
    
        LinkedList ll = new LinkedList();
    
          ll.add("F");
          ll.add("B");
          ll.add("D");
          ll.add("E");
          ll.add("C");
          ll.addLast("Z");
          ll.addFirst("A");
          ll.add(1, "A2");
          System.out.println("Original contents of ll: " + ll);
    
          ll.remove("F");
          ll.remove(6);
          System.out.println("Contents of ll after deletion: "
           + ll);
    
          ll.removeFirst();
          ll.removeLast();
          System.out.println("ll after deleting first and last: "
           + ll);
    
          Object val = ll.get(2);
          ll.set(2, (String) val + " Changed");
          System.out.println("ll after change: " + ll);
    
           ll.clear();
           System.out.println("LinkedList now contains : " + ll);
       }
    }
    
    • import java.util.LinkedList; Es definiert eine Reihe nützlicher Klassen.
    • LinkedList ll = new LinkedList(); Diese Zeile definiert die Schnittstelle für verknüpfte Listen, die zum Erstellen eines neuen LinkedList-Objekts mit dem neuen Operator verwendet wird.
    • Wir können die Methode „ll.add()“ verwenden, um die Elemente in der verknüpften Liste hinzuzufügen, wobei „ll“ das Objekt ist.
    • Im obigen Beispiel haben wir die Methode „ll.remove“ verwendet, um ein angegebenes Element aus der verknüpften Liste zu entfernen.
    • Um das erste Element aus der Liste zu entfernen, haben wir die Methode „ll.removeFirst()“ verwendet und um das letzte Element aus der Liste zu entfernen, verwenden wir die Methode „ll.removeLast()“.
    • Wir haben die Methode „ll.clear()“ verwendet, um alle Elemente aus der Liste zu entfernen.

    Wenn Sie das obige Beispiel ausführen, erhalten Sie die folgende Ausgabe:

    Beispiel für Java LinkedList-Methoden

    Kommentar verfassen

    Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

    Nach oben scrollen