Я ищу, чтобы прояснить что-то относительно удаления элементов из LinkedList. С учетом этого кода:Удаление элемента из LinkedList по индексу
public boolean remove(int index)
{
// if the index is out of range, exit
if(index < 1 || index > size())
return false;
Node current = head;
for(int i = 1; i < index; i++)
{
if(current.getNext() == null)
return false;
current = current.getNext();
}
current.setNext(current.getNext().getNext());
listCount--;
return true;
}
Из того, что я вижу, этот код заканчивается элементом перед тем, который вы хотите удалить. Затем он присваивает «следующее» поле узлу после того, который вы хотите удалить. Мой вопрос: вам не нужно назначать «следующее» поле узла, который вы хотите удалить, до нуля? Я немного смущен, потому что похоже, что «следующее» поле по-прежнему указывает на элемент после, поэтому у вас есть два узла, указывающих на него.
Любая помощь будет оценена по достоинству.
Но этот элемент больше не будет доступен из списка, т. Е. С помощью методов списка это ничего не повлияет. –