定义两个指针,两层while循环。
第一层为slow非空的循环,第二层为fast循环,用来寻找并删除重复结点。
slow循环和fast循环依次进行。
public ListNode removeDuplicateNodes(ListNode head) {
ListNode slow = head;
while(slow!=null) {
ListNode fast =slow;
while(fast.next!=null){
if (fast.next.val == slow.val) {
fast.next = fast.next.next;
}else {
fast = fast.next;
}
}
slow = slow.next;
}
return head;
}