我问过我的朋友,他们说你永远不会把电流带到上一个节点,当我问他们为什么没有给我一个明确的理由时,有人能帮助我吗?
str(group)
答案 0 :(得分:0)
如果您想要改变现有链接列表并删除元素,那么基本思路就是合理的。虽然在while之后缺少花括号,并且在第一个tmp.next时会出现NullPointException。
答案 1 :(得分:0)
通常,remove
方法将传递要删除的节点中的数据。你的问题中不清楚current
应该指出什么。您的代码不支持删除列表的头部或空列表(空头)。
这是一个潜在的实施方案:
public boolean remove(T value) {
if (head == null) {
return false;
} else if (head.value.equals(value)) {
head = head.next;
return true;
} else {
Node<T> current = head;
while (current.next != null) {
if (current.next.value.equals(value)) {
current.next = current.next.next;
return true;
}
current = current.next;
}
return false;
}
}
如果current
变量最终指向被删除节点之前的节点,那么就会出现问题:如果要移除列表的头部会发生什么?