English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Java Grund教程

Java Steuerung des Flusses

Java Array

Java objektorientiert (I)

Java objektorientiert (II)

Java objektorientiert (III)

Java Ausnahmebehandlung

Java Liste (List)

Java Queue (Warteschlange)

Java Map Sammlung

Java Set Sammlung

Java Eingabe Ausgabe(I/O)

Java Reader/Writer

Java andere Themen

Java-Programm, um die mittlere Elemente einer LinkedList in einem Iterationsvorgang zu erhalten

   Java Beispiele大全

In diesem Beispiel werden wir lernen, wie man in Java die mittlere Elemente einer LinkedList in einem Iterationsvorgang erhält.

Um diesen Beispiel zu verstehen, stellen Sie sicher, dass Sie zunächst die folgenden Tutorials besuchen:

Beispiel1:通过一次迭代获取LinkedList的中间元素

class LinkedList {
  //Erstellen Sie ein Objekt der Klasse Node
  //Stellt den Kopf der Liste dar
  Node head;
  //Statische Innere Klasse
  static class Node {
    int value;
    //Jeder Knoten wird mit dem nächsten Knoten verbunden
    Node next;
    Node(int d) {
      value = d;
      next = null;
    }
  }
  public static void main(String[] args) {
    //Erstellen Sie ein LinkedList-Objekt
    LinkedList linkedList = new LinkedList();
    //Wertzuweisung für jeden Knoten der Liste
    linkedList.head = new Node(1);
    Node second = new Node(2);
    Node third = new Node(3);
    //Verbinden Sie jeden Knoten der Liste mit dem nächsten Knoten
    linkedList.head.next = second;
    second.next = third;
    //Drucken Sie die Liste aus
    Node pointer = linkedList.head;
    System.out.print("LinkedList: ")
    while (pointer != null) {
      System.out.print(pointer.value + ");
      pointer = pointer.next;
    }
    // den mittleren Element finden
    Node ptr1 = linkedList.head;
    Node ptr2 = linkedList.head;
    while (ptr1.next != null) {
      //setzt ptr1erhöhen2,setzt ptr2erhöhen1
      //wenn ptr1zeigt auf das letzte Element
      //ptr2wird auf das mittlere Element zeigen
      ptr1 = ptr1.next;
      if(ptr1.next != null) {
        ptr1 = ptr1.next;
        ptr2 = ptr2.next;
      }
    }
    System.out.println("\nMittleres Element: " + ptr2.value);
  }
}

Ausgaberesultat

LinkedList: 1 2 3 
Mittleres Element: 2

In diesem Beispiel haben wir die Datenstruktur der Liste mit Java implementiert. Dann haben wir im Zyklus den mittleren Element der Liste gefunden. Beachten Sie den Code,

    while (ptr1.next != null) {
      //setzt ptr1erhöhen2,setzt ptr2erhöhen1
      //wenn ptr1zeigt auf das letzte Element
      //ptr2wird auf das mittlere Element zeigen
      ptr1 = ptr1.next;
      if(ptr1.next != null) {
        ptr1 = ptr1.next;
        ptr2 = ptr2.next;
      }
    }

Hier haben wir zwei Variablen ptr1und ptr2。 Wir verwenden diese Variablen, um die Liste zu durchsuchen.

in jeder Iteration, ptr1zwei Knoten besuchen wird, während ptr2den einzelnen Knoten der Liste besuchen wird.

jetzt, wenn ptr1Wenn ptr am Ende der verknüpften Liste angekommen ist,2befindet sich in der Mitte. Auf diese Weise können wir die mittlere Position der Liste in einer Iteration erhalten.

Beispiel2:Verwenden Sie LinkedList-Klasse, um den mittleren Element der LinkedList zu erhalten

import java.util.LinkedList;
class Main {
  public static void main(String[] args){
    //Verwenden Sie die LinkedList-Klasse, um eine Liste zu erstellen
    LinkedList<String> animals = new LinkedList<>();
    //Elemente zur LinkedList hinzufügen
    animals.add("Hund");
    animals.addFirst("Katze");
    animals.addLast("Pferd");
    System.out.println("LinkedList: " + animals);
    //Zugriff auf das mittlere Element
    String middle = animals.get(animals.size())/2);
    System.out.println("Mittleres Element: " + middle);
    }
}

Ausgaberesultat

LinkedList: [Katze, Hund, Pferd]
Mittleres Element: Hund

Im obigen Beispiel haben wir die LinkedList-Klasse verwendet, um die Datenstruktur der Liste zu realisieren. Beachten Sie den Ausdruck

animals.get(animals.size())/2)
  • size()/ 2 - Position des mittleren Elements zurückgeben

  • get() - Element in der Mitte zurückgeben

Java Beispiele大全