思想:快指標先走到第k個結點。然後快慢指標一起往後走,當快指標指向最後乙個結點的時候,慢指標就是倒數第k個結點
// 刪除倒數第k個結點
public
static node deletelastkth
(node list,
int k)
//k過大,已經走到末尾了
if(fast == null)
return list;
node slow = list;
node prev = null;
//fast指向最後乙個結點
while
(fast.next != null)
//如果k剛好就是鍊錶的長度,刪除第乙個
if(prev == null)
else
return list;
}
刪除鍊錶的倒數第k個結點
刪除鍊錶的倒數第k個結點 1看到題的想法是從頭到尾遍歷單鏈表,找到倒數第k的節點 這裡建立兩個指標即pre和head 分情況 plist鍊錶為空,返回空 先讓前指標從第乙個節點遍歷到第k個節點 k 此時k 1,後指標pre和前指標head剛好差k個結點 此時讓後指標開始從第乙個結點與前指標head同...
刪除鍊錶的倒數第k個結點
給你乙個鍊錶,刪除鍊錶的倒數第k個結點,並且返回鍊錶的頭結點。示例 1 輸入 head 1,2,3,4,5 k 2 輸出 1,2,3,5 示例 2 輸入 head 1 k 1 輸出 示例 3 輸入 head 1,2 k 1 輸出 1 本題要求刪除倒數第k個結點,重要的是獲取刪除結點的前乙個結點,將該...
13 鍊錶倒數第K個結點
題目 輸入乙個單向鍊錶,輸出該鍊錶中倒數第k 個結點。鍊錶的倒數第0 個結點為鍊錶的尾指標。鍊錶結點定義如下 struct listnode handwriting listnode lastk listnode head,int k whlie knode 0 return head 1 沒考慮k...