戴璞微的博客

简单点!做事的动机简单点

剑指offer--链表中倒数第k个结点

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


AC代码:

/*
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 p = head;
        int len = 0;
        if (k < 0) {  
             System.out.println("k不可以为负数");  
             return null;  
        }  

        if (head == null) {  
            System.out.println("单链表为空");  
            return null;
        }  

        while(p != null){
            len++;
            p = p.next;
        }

        if ( k > len){
            System.out.print("单链表太短");
            return null;
        }else{
            k = len - k ;
            while(k > 0){
                head = head.next;
                k--;
            }
            return head;
        }
    }
}
阅读更多
版权声明:本文为博主原创文章,若需转载,请注明http://blog.csdn.net/qq_30091945 https://blog.csdn.net/qq_30091945/article/details/70521330
所属专栏: 剑指offer题解
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭