链表中倒数第k个节点

题目描述

输入一个链表,输出该链表中倒数第k个结点。

代码实现(Java)

/*
public class ListNode {
    int val;
    ListNode next = null;

    ListNode(int val) {
        this.val = val;
    }
}*/
public class Solution {
    public ListNode FindKthToTail(ListNode head,int k) {
        if(head == null) return head;
        if(k == 0) return null;
        ListNode pre = head;
        ListNode lat = head;
        int i = 0;
        for(i = 0;i < k - 1;i++){
            if(lat.next != null) lat = lat.next;
            else return null;
        }
        while(lat.next != null){
            pre = pre.next;
            lat = lat.next;
        }
        return pre;
    }
}

注:题目来源自牛客网–剑指offer

猜你喜欢

转载自blog.csdn.net/tkzc_csk/article/details/79985465