/** * 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 temp = new ListNode(0); temp.next = head; // 保存已经确定到的点 ListNode left = temp; // 保存需要重重复判断到的点 ListNode right = temp.next; while (right != null) { int flag = 0; // 标记重复的个数,并且移动right指针,直到找到下一个值 while (right.next != null && right.val == right.next.val){ flag++; right = right.next; } // 有重复,则将left指向right的下一个 if(flag > 0) { left.next = right.next; right = right.next; }else { // 无重复,则不移动,从right处作为已经确定好的点,继续开始判断 left = right; right = right.next; } } return temp.next; }}作者:chris-157链接:https://leetcode-cn.com/problems/remove-duplicates-from-sorted-list-ii/solution/82-shan-chu-pai-xu-lian-biao-zhong-de-zh-y4i1/来源:力扣(LeetCode)著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。