剑指Offer22.链表中倒数第k个节点
经典必会题。来自程序员吴师兄。
class Solution { public ListNode getKthFromEnd(ListNode head, int k) { //初始化两个指针 former 和 latter,一开始都指向链表的头节点 ListNode former = head, latter = head; //前指针 former 先向前走 k 步 for(int i = 0; i < k; i++){ former = former.next; } // 两个指针 former 和 latter 同时向前移动,直到前指针 former 指向 NULL while(former != null) { former = former.next; latter = latter.next; } //最后返回 latter return latter; } }