題目:
給定乙個排序鍊錶,刪除所有重複的元素,使得每個元素只出現一次。
注意:鍊錶已經排序,排序,排序
無排序是另外一種解法;
方法:引入pre指標+next指標。穿針引線法
函式**:
class
solution
listnode *cur=head;
listnode *p=head;
while
(cur-
>next!=
null
&&cur!=
null
)else
}return head;}}
;
函式**二:
class
solution
// 注意,題目給的是已排好序的鍊錶,所以一旦cur和pre的值不等,那麼後面全部都不會出現和當前pre的值相等的元素了,所以pre可以往後移動一位
else
}return head;}}
;
class
solution
listnode *cur=head;
while
(cur&&cur-
>next)
else
}return head;}}
;
函式**三:注釋版
class
solution
listnode* ptr=head;
//遍歷的指標
while
(ptr-
>next !=
null
)else
}//返回首個節點
return head;}}
;
83 刪除排序鍊錶中的重複元素
給定乙個排序鍊錶,刪除所有重複的元素,使得每個元素只出現一次。示例 1 輸入 1 1 2 輸出 1 2 示例 2 輸入 1 1 2 3 3 輸出 1 2 3 看了下執行時間最快的演算法,分析了一下,leetcode程式設計都不注意記憶體 的嘛,以空間換時間 好像不是一般我們說的空間換時間演算法哈。記...
83 刪除排序鍊錶中的重複元素
題目 給定乙個排序鍊錶,刪除所有重複的元素,使得每個元素只出現一次。示例 1 輸入 1 1 2輸出 1 2示例 2 輸入 1 1 2 3 3輸出 1 2 3思路 首先判斷head或者head next為空指標,如果是返回head 不是的話,1.使用兩個listnode指標p和q,p初始化為head,...
83 刪除排序鍊錶中的重複元素
給定乙個排序鍊錶,刪除所有重複的元素,使得每個元素只出現一次。輸入 1 1 2輸出 1 2輸入 1 1 2 3 3輸出 1 2 3設定乙個cur指標指向當前結點,再設定乙個next指標指向當前結點的下乙個結點。設定乙個while迴圈使得next.val的值跟cur.val的值不相等,將cur和nex...