1. 程式人生 > 其它 >java 刪除連結串列中所有的重複元素

java 刪除連結串列中所有的重複元素

技術標籤:連結串列java

牛客題目連結

1. 題目考點

  1. 使用啞結點
  2. 連結串列節點刪除

2. 考點解析

public ListNode deleteDuplicates (ListNode head) {
    // write code here
    if (head == null) return null;
    
    ListNode newHead = new ListNode(0);
    newHead.next = head;
    ListNode p = head, pre = newHead;
    
    while (p != null &&
p.next != null) { // 關鍵:找到重複元素的起點 if (p.val == p.next.val) { ListNode temp = p.next; while (temp != null && temp.val == p.val) { temp = temp.next; } pre.next = temp; p = temp; } else { pre =
p; p = p.next; } } return newHead.next; }