請編寫乙個函式,使其可以刪除某個鍊錶中給定的(非末尾)節點,你將只被給定要求被刪除的節點。示例1現有乙個鍊錶 -- head = [4,5,1,9],它可以表示為:
4 -> 5 -> 1 -> 9
輸入: head = [4,5,1,9], node = 5
輸出: [4,1,9]
解釋: 給定你鍊錶中值為 5 的第二個節點,那麼在呼叫了你的函式之後,該鍊錶應變為 4 -> 1 -> 9.
說明:分析:
鍊錶的刪除操作:
1.須知道刪除節點的前一節點,
2.上一節點的指標指向刪除節點後的指標
本題的特點:
1.沒法知道前一節點
2.只有對要刪除節點的訪問許可權
3.給定的節點為非末尾節點
4.要刪除的節點是要捨棄的節點
so:(要刪除2)
1->2->3->4
1->3->3->4
1->3->4
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
刪除鍊錶中的節點
請編寫乙個函式,使其可以刪除某個鍊錶中給定的 非末尾 節點,你將只被給定要求被刪除的節點。現有乙個鍊錶 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 它可以表示為 示例 1 輸入 head 4,5,1,9 node 5 輸出 4,1,9 解釋 給定你鍊錶中值為 5 的第二個節點,那麼在呼叫了你的函式之後,該鍊錶應變為 ...