Heim  >  Artikel  >  Java  >  Zirkuläre verknüpfte Liste in Java

Zirkuläre verknüpfte Liste in Java

WBOY
WBOYOriginal
2024-08-30 15:10:16701Durchsuche

Eine zirkuläre verknüpfte Liste weist im Vergleich zu einer verknüpften Liste einen kleinen Unterschied auf. In einer kreisförmig verknüpften Liste zeigt der letzte Knoten auf den ersten Knoten, der einen vollständigen Knotenkreis vervollständigt. Mit anderen Worten können wir auch sagen, dass in dieser verknüpften Liste das letzte Element nicht null ist. Bei dieser Art von verknüpfter Liste kann jeder Knoten als Ausgangspunkt dienen. Dies bedeutet, dass die gesamte Liste durchlaufen werden kann, auch wenn wir von einem beliebigen Knoten aus beginnen. Enqueue- und Dequeue-Operationen sind in den zirkulär verknüpften Listen sehr einfach durchzuführen, da der letzte Knoten auf den ersten Knoten zeigt. In diesem Artikel werden wir die zirkuläre verknüpfte Liste anhand von Beispielen verstehen. In diesem Thema lernen wir die kreisförmige verknüpfte Liste in Java kennen.

Starten Sie Ihren kostenlosen Softwareentwicklungskurs

Webentwicklung, Programmiersprachen, Softwaretests und andere

Syntax der kreisförmigen verknüpften Liste in Java:

Unten finden Sie die Syntax:

  • Knotenklasse, die die Syntax definiert –
public class Course{
float marksscored;
Course comingup;
public Course(float marksscored) {
this.marksscored = marksscored;
}
}
  • Syntax für kreisförmige Listenkomponenten erstellen –
public Course evaluated = null;
public Course notevaluated = null;
  • Zirkuläre Listenkomponente zur kreisförmigen Listensyntax hinzufügen –
public void continued(float marksscored){
Course newCourse = new Course(marksscored);
if(evaluated == null) {
evaluated = newCourse;
notevaluated = newCourse;
newCourse.comingup = evaluated;
}
else {
notevaluated.comingup = newCourse;
notevaluated = newCourse;
notevaluated.comingup = evaluated;
}
}
  • Anzeige der Syntax der kreisförmigen Listenkomponenten –
public void show() {
Course current = evaluated;
if(evaluated == null) {
System.out.println("Results are underevaluation");
}
else {
System.out.println("The Marks Scored are as follows: ");
do{
System.out.print(" \n"+ current.marksscored);
current = current.comingup;
}while(current != evaluated);
System.out.println();
}
}
public static void main(String[] args) {
EDUCBA marks = new EDUCBA();
marks.continued(100);
marks.continued(230);
marks.continued(349);
marks.continued(423);
marks.show();
}
}

Arbeiten einer zirkulären verknüpften Liste in Java

Wie wir zuvor gelesen haben, ist die zirkulär verknüpfte Liste nichts anderes als eine Liste mit einer Sammlung von Knoten, wobei die letzten Knoten auf den ersten Knoten zeigen. Das folgende Diagramm erläutert dies. Hier ist Knoten 1 der Hauptknoten und Knoten 4 der letzte Knoten. Hier sehen wir also, dass Knoten 1 auf Knoten 2 zeigt, dann Knoten 2 auf Knoten 3 und Knoten 3 auf Knoten 4, und am Ende zeigt Knoten 4 zurück auf Knoten 1.

Zirkuläre verknüpfte Liste in Java

  • Zuerst müssen wir eine Knotenklasse definieren, die ein Knoten in der jeweiligen Liste sein wird. Es wird zwei Eigenschaftsdaten und die nächste haben, die auf den kommenden Knoten zeigen.
  • Es muss eine weitere Klasse definiert werden, die die zirkulär verknüpfte Liste mit zwei Knoten erstellt, wobei ein Knoten der Kopf und ein anderer der Schwanz ist. Darin wären zwei Methoden enthalten, nämlich add() und display().
  • Die Methode add() würde den Knoten zur Liste hinzufügen. Zuerst würde diese Methode prüfen, ob der Kopf null ist, und dann würde der Knoten als Kopf eingefügt.
  • Jetzt würden sowohl der Kopf als auch der Schwanz auf den neu hinzugefügten Knoten zeigen.
  • Wenn der Kopf nicht null ist, fungiert der neue Knoten als neuer Schwanz und sein Schwanz zeigt zum Kopf, da es sich bei dieser Liste um eine zirkulär verknüpfte Liste handelt.

Beispiele für zirkuläre verknüpfte Listen in Java

Im Folgenden finden Sie Beispiele für zirkuläre verknüpfte Listen in Java:

Beispiel #1

Im folgenden Beispiel wird eine stringbasierte kreisförmige Liste angezeigt. Zunächst haben wir eine Knotenklasse Course definiert. Dann haben wir eine weitere Klasse definiert, um eine kreisförmige verknüpfte Liste zu erstellen, und diese Klasse wird hinzugefügt und in der kreisförmigen verknüpften Liste angezeigt.

public class EDUCBA {
public class Course{
float marksscored;
Course comingup;
public Course(float marksscored) {
this.marksscored = marksscored;
}
}
public void continued(float marksscored){
Course newCourse = new Course(marksscored);
if(evaluated == null) {
evaluated = newCourse;
notevaluated = newCourse;
newCourse.comingup = evaluated;
}
else {
notevaluated.comingup = newCourse;
notevaluated = newCourse;
notevaluated.comingup = evaluated;
}
}
public Course evaluated = null;
public Course notevaluated = null;
public void show() {
Course current = evaluated;
if(evaluated == null) {
System.out.println("Results are underevaluation");
}
else {
System.out.println("The Marks Scored are as follows: ");
do{
System.out.print(" \n"+ current.marksscored);
current = current.comingup;
}while(current != evaluated);
System.out.println();
}
}
public static void main(String[] args) {
EDUCBA marks = new EDUCBA();
marks.continued(100);
marks.continued(230);
marks.continued(349);
marks.continued(423);
marks.show();
}
}

Ausgabe:

Zirkuläre verknüpfte Liste in Java

Beispiel #2

Im folgenden Beispiel wird eine stringbasierte kreisförmige Liste angezeigt. Zunächst haben wir eine Knotenklasse „Coursename“ definiert. Dann haben wir eine weitere Klasse definiert, um eine kreisförmige verknüpfte Liste zu erstellen, und diese Klasse wird hinzugefügt und in der kreisförmigen verknüpften Liste angezeigt.

public class EDUCBA {
public class Coursename{
String name;
Coursename comingup;
public Coursename(String name) {
this.name = name;
}
}
public void continued(String name){
Coursename newCoursename = new Coursename(name);
if(evaluated == null) {
evaluated = newCoursename;
notevaluated = newCoursename;
newCoursename.comingup = evaluated;
}
else {
notevaluated.comingup = newCoursename;
notevaluated = newCoursename;
notevaluated.comingup = evaluated;
}
}
public Coursename evaluated = null;
public Coursename notevaluated = null;
public void show() {
Coursename current = evaluated;
if(evaluated == null) {
System.out.println("No desired course found");
}
else {
System.out.println("The requested courses are as follow: ");
do{
System.out.print(" \n"+ current.name);
current = current.comingup;
}while(current != evaluated);
System.out.println();
}
}
public static void main(String[] args) {
EDUCBA names = new EDUCBA();
names.continued("Course 1: Data Science");
names.continued("Course 2: Finance");
names.continued("Course 3: React Native");
names.continued("Course 4: React");
names.continued("Course 5: Excel");
names.continued("Course 6: Java");
names.continued("Course 7: Lua");
names.continued("Course 8: TypeScript");
names.continued("For more Information");
names.continued("Feel free to visit us on www.EDUCBA.com");
names.show();
}
}

Ausgabe:

Zirkuläre verknüpfte Liste in Java

Fazit

Auf der Grundlage dieses Artikels haben wir das Konzept einer zirkulären verknüpften Liste in Java verstanden und wie es sich von der verknüpften Liste unterscheidet. Wir haben die Funktionsweise der zirkulär verlinkten Liste und auch die gezeigten Beispiele durchgesehen. Die Beispiele würden Anfängern dabei helfen, das Konzept der zirkulär verknüpften Listen sehr leicht zu verstehen.

Das obige ist der detaillierte Inhalt vonZirkuläre verknüpfte Liste in Java. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Vorheriger Artikel:Java async wartetNächster Artikel:Java async wartet