LeetCode 刪除鍊錶中的第N個元素

2021-10-03 19:03:55 字數 752 閱讀 7478

題目描述:

給定乙個鍊錶,刪除鍊錶的倒數第 n 個節點,並且返回鍊錶的頭結點。

答題思路:兩邊掃瞄,第一遍拿到刪除點位置,第二遍找到刪除點進行刪除。

class

solution

:def

removenthfromend

(self, head: listnode, n:

int)

-> listnode:

node_no =

0 node = head

while node is

notnone

: node = node.

next

node_no +=

1 node_no -= n +

1 node = head

if node_no ==-1

: head = head.

next

else

:while

(node_no)

: node = node.

next

node_no -=

1 node.

next

= node.

next

.next

return head

鍊錶 LeetCode19刪除鍊錶中的第N個節點

給定乙個鍊錶,刪除鍊錶的倒數第 n 個節點,並且返回鍊錶的頭結點。示例 給定乙個鍊錶 1 2 3 4 5,和 n 2.當刪除了倒數第二個節點後,鍊錶變為 1 2 3 5.說明 給定的 n 保證是有效的。高階 你能嘗試使用一趟掃瞄實現嗎?分析 看到這個問題,第一反應,先求長度,再找節點,看一下高階,有...

LeetCode鍊錶 19刪除鍊錶的倒數第N個節點

給定乙個鍊錶,刪除鍊錶的倒數第 n 個節點,並且返回鍊錶的頭結點。示例 給定乙個鍊錶 1 2 3 4 5,和 n 2.當刪除了倒數第二個節點後,鍊錶變為 1 2 3 5.說明 給定的 n 保證是有效的。高階 你能嘗試使用一趟掃瞄實現嗎?我採取一次掃瞄來實現。1.定義兩個指標,令他們相隔n的距離,則前...

LeetCode 刪除鍊錶中的節點

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