/* * 82. Remove Duplicates from Sorted List II * 2016-5-13 by Mingyang * 首先,如果是两个相等,那么就一直往下走到不相等的一个 * 这个时候再判断,两个情况 * 1.pre的下一个是cur。那么直接两个都next * 2.那么就忽略掉cur,因为cur肯定与前面是一样的 */ public ListNode deleteDuplicates1(ListNode head) { if(head==null) return null; ListNode FakeHead=new ListNode(0); FakeHead.next=head; ListNode pre=FakeHead; ListNode cur=head; while(cur!=null){ while(cur.next!=null&&cur.val==cur.next.val){ cur=cur.next; } if(pre.next==cur){ pre=pre.next; cur=cur.next; } else{ pre.next=cur.next; cur=cur.next; } } return FakeHead.next; }