链表倒数第k个结点

链表中倒数第k个结点

http://www.nowcoder.com/questionTerminal/529d3ae5a407492994ad2a246518148a

题目描述
输入一个链表,输出该链表中倒数第k个结点。
【递归!!】类似于二叉树遍历,从后面往前找,直到找到第k个结点(也就是倒数第k个结点)
AC代码:

class Solution {
public:
    int count=0;
    ListNode* p=NULL;
    void Find(ListNode* pListHead, unsigned int k)
    {
        if(pListHead==NULL) return;
        FindKthToTail(pListHead->next,k);
        count++;
        if(count==k) 
        {
            p=pListHead;
        }
    }
    ListNode* FindKthToTail(ListNode* pListHead, unsigned int k) {
        Find(pListHead,k);
        return p;
    }
};
全部评论

相关推荐

用友 大财务领域产品经理 35w 硕士985
点赞 评论 收藏
分享
会飞的猿:本人来了,手一抖转错了,我是学生,能还给我吗
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务