刪除鍊錶的倒數第N個結點

2021-09-26 09:33:29 字數 563 閱讀 6030

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

給定乙個鍊錶: 1->2->3->4->5, 和 n = 2

當刪除了倒數第二個節點後,鍊錶變為 1->2->3->5

class

solution

listnode dummynode =

newlistnode(-

1); dummynode.next = head;

listnode cur = dummynode;

listnode h = head;

int num =0;

//遍歷鍊錶,計算鍊錶的長度

while

(h != null)

//走到倒數第n個節點的前驅節點處

for(

int i=

0;i)//讓前驅節點直接指向要刪除節點的後繼節點

cur.next = cur.next.next;

return dummynode.next;

}}

思想:分解為兩步:找到節點,刪除節點

刪除鍊錶的倒數第 N 個結點

給你乙個鍊錶,刪除鍊錶的倒數第 n 個結點,並且返回鍊錶的頭結點。快指標start 慢指標end 此題目需要刪除乙個節點,並且返回新的鍊錶,使用快慢指標法,先移動快指標n個身位,兩個指標相差n 1個節點 再將兩個指標一起移動,當快指標的next為null時,證明已經移動到鍊錶末端,並指向最後乙個節點...

鍊錶 刪除鍊錶的倒數第 N 個結點

記錄 於leetcode 在對鍊錶進行操作時,一種常用的技巧是新增乙個啞節點 dummy node 它的next 指標指向鍊錶的頭節點。這樣一來,我們就不需要對頭節點進行特殊的判斷了。例如,在本題中,如果我們要刪除節點 y,我們需要知道節點 y 的前驅節點 x,並將 x 的指標指向 y 的後繼節點。...

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

題目 給定乙個鍊錶,刪除鍊錶中倒數第n個節點,返回鍊錶的頭節點。注意事項 鍊錶中的節點個數大於等於n 您在真實的面試中是否遇到過這個題?yes 樣例給出鍊錶1 2 3 4 5 null 和 n 2.刪除倒數第二個節點之後,這個鍊錶將變成1 2 3 5 null.思路 這道題的思路十分奇特,那就是為了...