1.考慮輸入空鍊錶和乙個節點鍊錶
2.如果頭節點不重複,直接遞迴查詢重複
3.雙指標,進行判斷兩個節點是不是相等
# -*- coding:utf-8 -*-
# class listnode:
# def __init__(self, x):
# self.val = x
# self.next = none
class
solution
:def
deleteduplication
(self, phead)
:# write code here
if phead is
none
or phead.
next
isnone
:return phead
head1 = phead.
next
if head1.val != phead.val:
phead.
next
= self.deleteduplication(phead.
next
)else
:while phead.val == head1.val and head1.
next
isnot
none
: head1 = head1.
next
if head1.val != phead.val:
phead = self.deleteduplication(head1)
else
:return
none
return phead
劍指offer 18 刪除鍊錶的節點
描述 給定單向鍊錶的頭指標和乙個要刪除的節點的值,定義乙個函式刪除該節點。返回刪除後的鍊錶的頭節點。示例 輸入 head 4,5,1,9 val 5 輸出 4,1,9 解釋 給定你鍊錶中值為 5 的第二個節點,那麼在呼叫了你的函式之後,該鍊錶應變為 4 1 9.常規思路 定義乙個暫時變數用來刪除節點...
劍指offer 18 刪除鍊錶的節點
給定單向鍊錶的頭指標和乙個要刪除的節點的值,定義乙個函式刪除該節點。返回刪除後的鍊錶的頭節點。注意 此題對比原題有改動 示例 1 輸入 head 4,5,1,9 val 5 輸出 4,1,9 解釋 給定你鍊錶中值為 5 的第二個節點,那麼在呼叫了你的函式之後,該鍊錶應變為 4 1 9.示例 2 輸入...
劍指 Offer 18 刪除鍊錶的節點
給定單向鍊錶的頭指標和乙個要刪除的節點的值,定義乙個函式刪除該節點。返回刪除後的鍊錶的頭節點。注意 此題對比原題有改動 示例 1 輸入 head 4,5,1,9 val 5 輸出 4,1,9 解釋 給定你鍊錶中值為 5 的第二個節點,那麼在呼叫了你的函式之後,該鍊錶應變為 4 1 9.示例 2 輸入...