LeetCode 刪除鍊錶中的節點 入門演算法

2021-08-29 18:44:23 字數 846 閱讀 8200

今天 刷到了乙個比較有趣的題目

請編寫乙個函式,使其可以刪除某個鍊錶中給定的(非末尾)節點,你將只被給定要求被刪除的節點。

現有乙個鍊錶 – head = [4,5,1,9],它可以表示為:

4 -> 5 -> 1 -> 9 示例 1:
輸入: head = [4,5,1,9], node = 5 輸出: [4,1,9] 解釋: 給定你鍊錶中值為 5

的第二個節點,那麼在呼叫了你的函式之後,該鍊錶應變為 4 -> 1 -> 9. 示例 2:

輸入: head = [4,5,1,9], node = 1 輸出: [4,5,9] 解釋: 給定你鍊錶中值為 1

的第三個節點,那麼在呼叫了你的函式之後,該鍊錶應變為 4 -> 5 -> 9.

看著不就是 鍊錶的刪除嘛

class solution 

};

但是呢 該函式的輸入就要刪除的節點

這 怎麼刪除呢

一般是找到待刪除節點的上乙個 然後方便刪除

那麼我們 換乙個思路

不是刪除這個節點

而是保證輸出的結果 和 刪除這個節點後的結果 相同

什麼意思呢

比如 4 -> 5 -> 1 -> 9 要求 刪除 5 輸出是 4 -> 1 -> 9

那麼這樣子做呢

4 -> 5 -> 1 -> 9 先變成 4 -> 1 -> 1 ->9 然後刪除第二個1

變成 4 -> 1 ->9

這不就行了嗎

class solution 

};

Leetcode實戰 237 刪除鍊錶中的節點

請編寫乙個函式,使其可以刪除某個鍊錶中給定的 非末尾 節點,你將只被給定要求被刪除的節點。現有乙個鍊錶 head 4,5,1,9 它可以表示為 示例1 輸入 head 4 5,1 9 node 5輸出 4 1,9 解釋 給定你鍊錶中值為 5 的第二個節點,那麼在呼叫了你的函式之後,該鍊錶應變為 4 ...

Leetcode記錄 237 刪除鍊錶中的節點

請編寫乙個函式,使其可以刪除某個鍊錶中給定的 非末尾 節點,你將只被給定要求被刪除的節點。現有乙個鍊錶 head 4,5,1,9 它可以表示為 示例 1 輸入 head 4,5,1,9 node 5 輸出 4,1,9 解釋 給定你鍊錶中值為 5 的第二個節點,那麼在呼叫了你的函式之後,該鍊錶應變為 ...

力扣(LeetCode)237 刪除鍊錶中的節點

請編寫乙個函式,使其可以刪除某個鍊錶中給定的 非末尾 節點,你將只被給定要求被刪除的節點。現有乙個鍊錶 head 4,5,1,9 它可以表示為 示例 1 輸入 head 4,5,1,9 node 5 輸出 4,1,9 解釋 給定你鍊錶中值為 5 的第二個節點,那麼在呼叫了你的函式之後,該鍊錶應變為 ...