Java 面试题 -- 链表中倒数第k个节点

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

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

    ListNode(int val) {
        this.val = val;
    }
}*/
public class Solution {
   public ListNode FindKthToTail(ListNode head,int k) {
        ListNode tNode = head;
        int len = 0;
        while(null!=tNode) {
        	len++;
        	tNode=tNode.next;
        }
       //应该对k的取值范围加以考虑
        int Ryc = len - k;
        tNode = head;
        if(Ryc<0) return null;
        while(0!=Ryc--) {
        	tNode = tNode.next;
        }
        return tNode;
    }
}

 

你可能感兴趣的:(java,数据结构)