我不确定这是否是为我的循环列表创建删除方法的正确方法,而且我在让它适用于 1 节点列表时遇到问题。
public void remove() {
if(first.getNext() == null) {
first = null;
first.setNext(null);
} else {
Node current = first;
for(int i = 0; i < getSize() - 1; i++) {
current = current.getNext();
}
first = first.getNext();
current.setNext(first);
size--;
}
}
我让它适用于大于两个的列表,但我不确定这是否是解决问题的最佳方法。有没有人对改进这一点的方法有任何建议,以及让一个节点列表正确删除?即使我将第一个节点设置为空,下一个节点也设置为空,它仍然返回我的原始输入。
编辑:对于将来查看此内容的任何人,我刚刚打印出一条消息,说您无法删除该元素。因为我的任务对于要做什么非常模棱两可。