我迷路了,真的希望有人能在这里帮助我,我应该创建一个函数来查找重复的数字节点并删除重复项。每当我运行整个代码时,我都会陷入内部的无限循环while(current.next != null)
。
我的主要问题是,我知道我的问题存在于if (tester.data == current.data)
. 我不明白为什么他们从不测试或比较(他们的整数)。如果这是一个模糊的问题,我很抱歉,我已经困惑地盯着屏幕看了好几个小时。
public void removeDuplicate()
{
// removes all duplicate nodes from the list
Node tester = head;
Node previous = head;
Node current = head.next;
while (tester.next != null){
int i = 0;
while(current.next != null){
System.out.println("Stuck here3");
if (tester.data == current.data){
Node tempNode = current.next;
previous.next = tempNode;
current = tempNode;
size--;
System.out.println("Stuck here2");
break;
}
else{
previous = current;
current = current.next;
}
}
System.out.println("Stuck here1");
tester = tester.next;
current = tester.next;
}
}