題目:輸入一個(gè)鏈表,輸出該鏈表中倒數(shù)第k個(gè)結(jié)點(diǎn)。
思路:兩個(gè)指針最開(kāi)始都指向head節(jié)點(diǎn),讓其中一指針先移動(dòng)k-1步,然后另一個(gè)指針在一起移動(dòng);后一個(gè)指針指向的即是倒數(shù)第k個(gè)節(jié)點(diǎn)。
源碼:
public class Solution {
public ListNode FindKthToTail(ListNode list,int k) {
if (list == null) return list;
ListNode node = list;
int count = 0;
while (node != null) {
count++;
node = node.next;
}
if (count < k) return null;
ListNode p = list;
for (int i = 0; i < count - k; i++) {
p = p.next;
}
return p;
}
}