描述:
英文版的,人家說的是在只給定被刪除節點的情況下,刪除該節點(說實話我的閱讀理解可能有點差,沒搞懂題的意思.我一直嘗試給題裡面多加乙個引數)
class listnode(object):
def __init__(self, x):
self.val = x
self.next = none
class solution(object):
def deletenode(self, node):
""":type node: listnode
:rtype: void do not return anything, modify node in-place instead.
"""node.val = node.next.val
node.next = node.next.next
def deletenode1(self, head, node):
""":type node: listnode
:rtype: void do not return anything, modify node in-place instead.
"""if head.val == node.val:
return head.next
pre = head
temp = head.next
while temp:
if temp.val == node.val:
pre.next = temp.next
break
# 題裡面說不是最後乙個,但是為了以防萬一還是加上
if not temp.next:
break
pre = temp
temp = temp.next
if __name__ == '__main__':
s1 = solution()
head = [4, 5, 1, 9]; node = 1
s1.deletenode(head, node)
刪除鍊錶中的節點
請編寫乙個函式,使其可以刪除某個鍊錶中給定的 非末尾 節點,你將只被給定要求被刪除的節點。現有乙個鍊錶 head 4,5,1,9 它可以表示為 4 5 1 9示例 1 輸入 head 4,5,1,9 node 5 輸出 4,1,9 解釋 給定你鍊錶中值為 5 的第二個節點,那麼在呼叫了你的函式之後,...
刪除鍊錶中的節點
鍊錶 typedef int datatype typedef struct node node,pnode,list,plist 我們知道在鍊錶中刪除乙個節點,最原始的方法就是講整個鍊錶遍歷一遍,遇到需要刪除的就將它刪除就可以,但是遍歷一遍鍊錶,其時間複雜度為o n 但是題目中要求在o 1 時間內...
刪除鍊錶中的節點
請編寫乙個函式,使其可以刪除某個鍊錶中給定的 非末尾 節點,你將只被給定要求被刪除的節點。現有乙個鍊錶 head 4,5,1,9 它可以表示為 4 5 1 9示例1 輸入 head 4,5,1,9 node 5 輸出 4,1,9 解釋 給定你鍊錶中值為 5 的第二個節點,那麼在呼叫了你的函式之後,該...