劍指offer10 在O 1 時間刪除鍊錶結點

2021-09-13 20:15:48 字數 410 閱讀 4985

給定單向鍊錶的乙個節點指標,定義乙個函式在o(1)時間刪除該結點。

假設鍊錶一定存在,並且該節點一定不是尾節點。

樣例輸入:鍊錶 1->4->6->8

刪掉節點:第2個節點即6(頭節點為第0個節點)

輸出:新鍊錶 1->4->8

注:單鏈表不能找到前驅節點,所以不能按常規方法將該節點刪除

可以換一種思路,將下乙個節點的值複製到當前節點,然後將下乙個結點刪除即可

只有常數次操作,所以時間複雜度是o(1)

**:

/**

* definition for singly-linked list.

* public class listnode

* }*/class solution

}}

劍指offer 在O 1 時間刪除鍊錶結點

題目 給定單向鍊錶的頭指標和乙個指標,定義乙個函式在o 1 時間刪除該結點 class node public string getvalue public void setvalue string value public node getnext public void setnext node...

劍指offer 在O(1)時間刪除鍊錶節點

題目描述 給定單鏈表的頭結點和待刪除結點,在o 1 時間刪除鍊錶節點 class listnode 常規方法從煉表頭結點沿著鍊錶找到待刪除結點完成刪除操作。時間複雜度o n 可以將待刪除結點的下一結點內容複製到待刪除結點上,將待刪除結點的下一結點指向待刪除結點的的下一結點的下一結點。時間複雜度o 1...

劍指offer13 在O 1 時間刪除鍊錶結點

題目 在給定單向鍊錶的頭指標和乙個結點指標,定義乙個函式在o 1 時間內刪除該節點。鍊錶的結點定義如下 struct listnode 要分析幾種情況 1.空鍊錶 2.只有乙個結點 3.刪除的結點是尾結點 void deletenode listnode pnode,listnode pdelete...