刪除鍊錶的倒數第k個結點;1看到題的想法是從頭到尾遍歷單鏈表,找到倒數第k的節點;這裡建立兩個指標即pre和head
分情況:
plist鍊錶為空,返回空;
先讓前指標從第乙個節點遍歷到第k個節點;k–,此時k=1,後指標pre和前指標head剛好差k個結點;此時讓後指標開始從第乙個結點與前指標head同步遍歷;當前指標遍歷到最後乙個結點時,後指標剛好在倒數第k個結點位置。
void
delnode
(plinklist plist,
int k)
while
(head-
>next)
head=head-
>next;}if
(k<=1)
}
鍊錶刪除倒數第k結點
思想 快指標先走到第k個結點。然後快慢指標一起往後走,當快指標指向最後乙個結點的時候,慢指標就是倒數第k個結點 刪除倒數第k個結點 public static node deletelastkth node list,int k k過大,已經走到末尾了 if fast null return lis...
刪除鍊錶的倒數第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...