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

2021-10-05 00:02:13 字數 726 閱讀 8450

難度:中等

題目描述

解題思路

一次遍歷找出長度,第二次刪除指定位置的元素

public listnode removenthfromend

(listnode head,

int n)

if(count == n)

return head.next;

p = head;

while

(count > n+1)

if(p.next != null)

return head;

}

快指標先往前走n個,然後快慢指標一起往後走,當快指標到達終點的時候,慢指標剛好在倒數第n個位置

public listnode removenthfromend

(listnode head,

int n)

if(fast == null)

return head.next;

while

(fast.next != null)

slow.next = slow.next.next;

return head;

}

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....