import java.util.*; /* * public class ListNode { * int val; * ListNode next = null; * } */ public class Solution { /** * * @param head ListNode类 * @return ListNode类 */ public ListNode deleteDuplicates (ListNode head) { // write code here if(head == null){ return head;} ListNode dummyNode = new ListNode(-1); dummyNode.next = head; ListNode cur = dummyNode; while (cur.next != null && cur.next.next != null) { if(cur.next.val == cur.next.next.val){ int x = cur.next.val; // 给出的链表为1→2→3→3→4→4→5, 返回1→2→3→4→5. // while(cur.next.next != null && cur.next.next.val == x){ // cur.next = cur.next.next; // } // 给出的链表为1→2→3→3→4→4→5, 返回1→2→5. while(cur.next != null && cur.next.val == x){ cur.next = cur.next.next; } }else{ cur = cur.next; } } return dummyNode.next; } }