0
点赞
收藏
分享

微信扫一扫

剑指 Offer 22. 链表中倒数第k个节点

三次方 2021-09-21 阅读 45
题目描述:
示例:
思路:

初始化两个指针before,after指向链表头节点,before先走k个节点,然后再让before,after同时前进,当before走到链表末尾时,after所在位置就是倒数第k个节点。


代码实现:
class Solution {
    public ListNode getKthFromEnd(ListNode head, int k) {
        ListNode before = head, after = head;
        while (k-- > 0) { // before先前进k个节点
            before = before.next;
        }
        while (before != null) { // before,after指针同时前进,直到before走出链表边界
            before = before.next;
            after = after.next;
        }
        return after; 
    }
}
举报

相关推荐

0 条评论