package 链表中;
/**
* 删除排序链表的所有重复节点
* @author buder_cp
*
*/
public class removeDuplicatesFromSortedListII {
public static ListNode deleteDuplicates(ListNode head) {
ListNode newHead = new ListNode(0);
newHead.next = head;
ListNode pre = newHead;
ListNode p = head;
ListNode next = null;
while (p != null && p.next != null ) {
next = p.next;
if (p.val == next.val) {
while (next != null && next.val == p.val) {
next = next.next;
}
pre.next = next;
p = next;
} else {
pre = p;
p = p.next;
}
}
return newHead.next;
}
public static void main(String[] args) {
int[] array = {1,2,3,3,4,4,4,4,4,5,66,66};
ListNode head = ListNode.arrayToList(array);
head = deleteDuplicates(head);
ListNode.printList(head);
}
}
删除排序链表的所有重复节点
关注
打赏