劍指offer 22 鍊錶中倒數第k個位元組

2021-10-16 15:26:33 字數 657 閱讀 6088

雙鏈表題目:輸入乙個鍊錶,輸出該鍊錶中倒數第k個節點。為了符合大多數人的習慣,本題從1開始計數,即鍊錶的尾節點是倒數第1個節點。例如,乙個鍊錶有6個節點,從頭節點開始,它們的值依次是1、2、3、4、5、6。這個鍊錶的倒數第3個節點是值為4的節點。

先算出鍊錶長度n,再設定乙個指標走(n-k)步,即可得解。

/**

* definition for singly-linked list.

* public class listnode

* }*/class

solution

for(

int i =

0;i)return ls;

}}

設定兩個指標faster和latter,faster先走k步,然後以faster!=null為條件進行迴圈,迴圈結束輸出latter,問題得解。

/**

* definition for singly-linked list.

* public class listnode

* }*/class

solution

while

(faster != null)

return latter;

}}

劍指offer 22 鍊錶中倒數第K個結點

這道題的題目可以描述為 輸入乙個鍊錶,輸出該鍊錶中倒數第k個結點。typedef int datatype typedef struct listnode listnode 初始化 void listinit listnode ppfirst 這道題的普通解題思路分為三步 1.定義兩個指標forwa...

劍指offer 22 鍊錶中倒數第k個節點

輸入乙個鍊錶,輸出該鍊錶中倒數第k個節點。為了符合大多數人的習慣,本題從1開始計數,即鍊錶的尾節點是倒數第1個節點。例如,乙個鍊錶有6個節點,從頭節點開始,它們的值依次是1 2 3 4 5 6。這個鍊錶的倒數第3個節點是值為4的節點。示例 給定乙個鍊錶 1 2 3 4 5,和 k 2.返回鍊錶 4 ...

劍指 Offer 22 鍊錶中倒數第k個節點

劍指 offer 22.鍊錶中倒數第k個節點 難度 簡單 輸入乙個鍊錶,輸出該鍊錶中倒數第k個節點。為了符合大多數人的習慣,本題從1開始計數,即鍊錶的尾節點是倒數第1個節點。例如,乙個鍊錶有6個節點,從頭節點開始,它們的值依次是1 2 3 4 5 6。這個鍊錶的倒數第3個節點是值為4的節點。示例 給...