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

2021-09-27 07:06:00 字數 821 閱讀 5891

題目.

middle意思

思想就是用兩個指標,它們之間的間隔為n,注意剛好刪除頭結點的情況

package main

import

("fmt"

)type listnode struct

func

printlist

(root *listnode)

} fmt.

println

("....")}

func

removenthfromend

(head *listnode, n int

)*listnode

if first ==

nil tail := head

for first.next !=

nil tail.next = tail.next.next

return head

}func

main()

,},}

,},}

printlist

(root)

//printlist(removenthfromend(root, 1))

//printlist(removenthfromend(root, 2))

printlist

(removenthfromend

(root,5)

)}

o(n)

o(1)

執行用時 :0 ms, 在所有 go 提交中擊敗了100.00%的使用者

記憶體消耗 :2.2 mb, 在所有 go 提交中擊敗了98.45%的使用者

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

給定乙個鍊錶,刪除鍊錶的倒數第 n 個節點,並且返回鍊錶的頭結點。示例 給定乙個鍊錶 1 2 3 4 5,和 n 2.當刪除了倒數第二個節點後,鍊錶變為 1 2 3 5.說明 給定的 n 保證是有效的。高階 你能嘗試使用一趟掃瞄實現嗎?說實話,就我的水平而言感覺這道題坑點還真不少,先來我的乙個粗糙版...

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

給定乙個鍊錶,刪除鍊錶的倒數第 n 個節點,並且返回鍊錶的頭結點。示例 給定乙個鍊錶 1 2 3 4 5,和 n 2.當刪除了倒數第二個節點後,鍊錶變為 1 2 3 5.說明 給定的 n 保證是有效的。高階 你能嘗試使用一趟掃瞄實現嗎?class solution def removenthfrom...

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

給定乙個鍊錶,刪除鍊錶的倒數第n個節點,並且返回鍊錶的頭結點。給定乙個鍊錶 1 2 3 4 5,和 n 2.當刪除了倒數第二個節點後,鍊錶變為 1 2 3 5.給定的n保證是有效的。首先遍歷得出鍊錶的長度l,然後刪除第l n個節點 definition for singly linked list....