82. Remove Duplicates from Sorted List II
/**
* Definition for singly-linked list.
* public class ListNode {
* int val;
* ListNode next;
* ListNode() {}
* ListNode(int val) { this.val = val; }
* ListNode(int val, ListNode next) { this.val = val; this.next = next; }
* }
*/
class Solution {
public ListNode deleteDuplicates(ListNode head) {
ListNode preHead = new ListNode(0, head);
ListNode slow = preHead;
ListNode fast = head;
while(fast!=null){
if(fast.next!=null && fast.val!=fast.next.val || fast.next==null){
slow.next = fast;
slow=fast;
fast = fast.next;
}else{
// fast.next != null && fast.val == fast.next.val
int val = fast.val;
while(fast!=null && fast.val==val){
fast=fast.next;
}
}
}
slow.next=null;
return preHead.next;
}
}
Last updated
Was this helpful?