14鍊錶中倒數第k個結點

2022-05-17 18:18:41 字數 717 閱讀 6346

輸入乙個鍊錶,輸出該鍊錶中倒數第k個結點。

思路:快慢指標

快指標 先走k 步, 然後快慢指標一起走

當快指標走到null 時, 慢指標就是所求的倒數第k個節點

tips:

判斷k是否越界是在快指標走的時候

1

public

class

solution

12while(fast!=null)16

return

slow;17}

18 }

1

public

class

solution

11while(fast!= null)15

return

slow;

16 }

1

public

class

solution

16return

slow;17}

18 }

c++:20180808

1/*2

struct listnode 8};

*/9class

solution

20while(fast!=null)

24return

slow;25}

26 };

14 鍊錶中倒數第k個結點

題目鏈結 題目描述 輸入乙個鍊錶,輸出該鍊錶中倒數第k個結點。先遍歷求得鍊錶長度,再遍歷查詢。時間複雜度o n struct listnode class solution p plisthead k cnt k 1 while p p p next return p 求倒數第k個結點,設立兩個指標...

14鍊錶中倒數第K個結點

1 鍊錶中倒數第k個結點2 題目 輸入乙個鍊錶,輸出該鍊錶中倒數第k個結點3 思路 看到鍊錶二話不說,先寫鍊錶結點定義 4struct listnode59 10 常規思想 然後,假設整個鍊錶有n個結點,那麼倒數第k個結點,就是正數的第n k 1個結點。如果我們能夠得到鍊錶中結點的個數n,那麼只要從...

14鍊錶中倒數第k個結點

輸入乙個鍊錶,輸出該鍊錶中倒數第k個結點。思路 要保證兩個鍊錶之間相差k個,這樣計算移動才是正確結果,這題受到以前做的題目的影響,面試的時候一定要問清楚k會不會大於總長度,如果大於總長度是取模還是出錯,這題就是返回錯誤資訊。struct listnode class solution listnod...