image.png
/**
* Definition for singly-linked list.
* public class ListNode {
* int val;
* ListNode next;
* ListNode(int x) { val = x; }
* }
*/
class Solution {
public ListNode getKthFromEnd(ListNode head, int k) {
// 定義雙指針
ListNode former = head;
ListNode latest = head;
// 先讓指針一走k步
for(int i = 0;i < k;i++){
former = former.next;
}
// 指針一和指針二保持距離后讓兩個(gè)指針共同前進(jìn),直到指針二指為空時(shí),就退出循環(huán)
while(former != null){
former = former.next;
latest = latest.next;
}
return latest;
}
}