リンクされたリストから重複データを削除するために Java で以下のコードを使用しています。私の質問は、current.next = null を明示的に設定することをお勧めするかどうかです。つまり、current が重複データになるため、前のノードのcurrent の next but current の隣に Java で削除されるということは、gc で使用できるようにすることを意味します。だから、本当に明示的に設定する必要がありますか?
public void removeDuplicates()
{
HashSet<Integer> nodeSet = new HashSet<Integer>();
Node previous = this;
Node current = previous;
while(current!=null)
{
if(!nodeSet.contains(current.data))
{
nodeSet.add(current.data);
previous = current;
current = current.next;
}
else
{
previous.next = current.next;
current.next = null;
current = previous.next;
}
}
}