leetcode82.删除排序链表中的重复元素II
思路源自
删除链表重复节点【基础算法精讲 08】
/*** 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 dummyHead = new ListNode(-1, head);for (ListNode cur = dummyHead; cur.next != null && cur.next.next != null; ) {if (cur.next.val == cur.next.next.val) {//记录重复的值int duplicateVal = cur.next.val;//跳过所有重复的值while (cur.next != null && cur.next.val == duplicateVal) {cur.next = cur.next.next;}} else {cur = cur.next;} }return dummyHead.next;}
}