1. 程式人生 > 其它 >力扣簡83 刪除排序連結串列中的重複元素

力扣簡83 刪除排序連結串列中的重複元素

//注意這個ListNode類需要寫在solution外面,要不然main裡沒法使用。而且main中類的新建要用

//自己寫的: 給定一個已排序的連結串列的頭 head , 刪除所有重複的元素,使每個元素只出現一次 。返回 已排序的連結串列 。
//第一種思路的時候出錯了 直接用l.next和l.next.next導致都混亂了 以後連結串列還是建議要用pre
//換了寫法後,最初沒有第一個空判斷,導致對於空情況取next報錯了

public ListNode deleteDuplicates(ListNode head) {

  if(head==null) {

    return head;
  }
  else {
    ListNode l = head.next;
    ListNode pre = head;
    while(l!=null) {
      if(pre.val==l.val) {
        pre.next=l.next;
        l=l.next;
      }  
      else {
        pre=l;
        l=l.next;
      }
    }
    return head;
  }
}