Hallo ich bin dabei die Programmiersprache zu lernen und bin gerade dabei lineare Datenstrukturen zu programmieren, um genau zu sein bin ich gerade dabei ein beliebiges Element in einer Liste zu löschen. Deswegen habe ich mir auch verschiedene Quelltexte im Internet angeschaut um zu sehen wie das ganze so funktioniert. Nun bin ich auf diesen Quelltext gestoßen wobei dieser nicht erklärt wurde. Könnte mir jemand Schritt für Schritt erklären was jeweils in dieser Methode passiert? Wäre sehr hilfreich. Zwar verstehe ich die Idee dahinter im Großen und Ganzen, tue mich allerdings mit der Sprache noch etwas schwer, vielen Dank. S steht auf jeden Fall für das Element was man löschen möchte.
Java:
public boolean delete(String s) {
Node dummy = first;
Node last = getLast();
if(s.equals(first.getContent())) {
delete();
}
while(!(dummy.getNext().getContent().equals(s))) {
if (s == null) {
return false;
}
Node current = first;
if (s.equals(current.getContent())) {
first = first.getNext();
return true;
}
while (current.getNext() != null && !s.equals(current.getNext().getContent())) {
current = current.getNext();
}
Node NodeS = current.getNext();
Node next = NodeS.getNext();
current.setNext(next);
NodeS = null;
}
return true;
}