public void deletionOfNode(int location) {
if (head == null) {
System.out.println("The SLL does not exist");
return;
} else if (location == 0) {
head = head.next;
size--;
if (size == 0) {
tail = null;
}
} else if (location >= size) {
Node tempNode = head;
for (int i = 0; i < size - 1; i++) {
tempNode = tempNode.next;
}
if (tempNode == head) {
tail = head = null;
size--;
return;
}
tempNode.next = null;
tail = tempNode;
size--;
} else {
Node tempNode = head;
for (int i = 0; i =size, тогда tempnode указывает на последний узел, я думаю, вместо того, чтобы указывать на предпоследний узел (чего мы хотим). Это все, что я думаю, если вы, ребята, знаете ответ, помогите мне с этим.
После просмотра кода я подумал, что местоположение начинается с 0, но потом я запутался в этом месте>= размер корпуса. Пожалуйста, объясните понятно, приведя пример
Подробнее здесь: [url]https://stackoverflow.com/questions/79273259/linked-list-in-java[/url]
[code]public void deletionOfNode(int location) { if (head == null) { System.out.println("The SLL does not exist"); return; } else if (location == 0) { head = head.next; size--; if (size == 0) { tail = null; } } else if (location >= size) { Node tempNode = head; for (int i = 0; i < size - 1; i++) { tempNode = tempNode.next; } if (tempNode == head) { tail = head = null; size--; return; } tempNode.next = null; tail = tempNode; size--; } else { Node tempNode = head; for (int i = 0; i =size, тогда tempnode указывает на последний узел, я думаю, вместо того, чтобы указывать на предпоследний узел (чего мы хотим). Это все, что я думаю, если вы, ребята, знаете ответ, помогите мне с этим. После просмотра кода я подумал, что местоположение начинается с 0, но потом я запутался в этом месте>= размер корпуса. Пожалуйста, объясните понятно, приведя пример