刪除鍊錶中倒數第n個節點

2021-07-29 19:31:35 字數 655 閱讀 9958

問題描述:

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

注意事項:鍊錶中的節點個數大於等於n 樣例

給出鍊錶1->2->3->4->5->null

和 n = 2.

刪除倒數第二個節點之後,這個鍊錶將變成1->2->3->5->null.

解題思路:

首先排除一些特殊情況,還需注意刪除第乙個節點的情況,用兩個指標,第乙個走到第n個節點時,第二個與第乙個同時開始走,兩個相差n步,當第乙個走到最後乙個節點是,第二個走到倒數n+1個,然後覆蓋。

程式**:

definition of listnode

class listnode

}class solution

if (p1 == null)

listnode* p2 = head;        

while (p1->next != null)

p2->next=p2->next->next;

return head;

// write your code here}};

感想:

這種方法需要注意,沒有想到。

刪除鍊錶中倒數第n個節點

刪除鍊錶中倒數第n個節點 給定乙個鍊錶,刪除鍊錶中倒數第n個節點,返回鍊錶的頭節點。樣例 給出鍊錶1 2 3 4 5 null 和 n 2.刪除倒數第二個節點之後,這個鍊錶將變成1 2 3 5 null.definition for listnode.public class listnode pu...

刪除鍊錶中倒數第n個節點

給定乙個鍊錶,刪除鍊錶中倒數第n個節點,返回鍊錶的頭節點。注意事項 鍊錶中的節點個數大於等於n 樣例 給出鍊錶1 2 3 4 5 null和 n 2.刪除倒數第二個節點之後,這個鍊錶將變成1 2 3 5 null.定義兩個指標,slow fast fast先先前走n步後 slow和fast一起走,直...

刪除鍊錶中倒數第n個節點

給定乙個鍊錶,刪除鍊錶中倒數第n個節點,返回鍊錶的頭節點。注意事項 鍊錶中的節點個數大於等於n 樣例 給出鍊錶1 2 3 4 5 null和 n 2.刪除倒數第二個節點之後,這個鍊錶將變成1 2 3 5 null.挑戰 o n 時間複雜度 如果先遍歷鍊錶,得出鍊錶結點個數,然後再第二次遍歷找出倒數第...