zoukankan      html  css  js  c++  java
  • [剑指offer] 链表中倒数第k个结点

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

    若p指针为头指针,q指针指向第k个结点,两个一起向后移动,当q指向最后一个结点时,p指向倒数第k个节点。

    /*
    struct ListNode {
        int val;
        struct ListNode *next;
        ListNode(int x) :
                val(x), next(NULL) {
        }
    };*/
    class Solution {
    public:
        ListNode* FindKthToTail(ListNode* pListHead, unsigned int k) {
            if (!pListHead || !k) return NULL;
            int n = k - 1;
            ListNode* node = pListHead;
            while (n--) {
                if (!(node->next)) return NULL;    // 这里要注意
                node  = node->next;
            }
            ListNode* re = pListHead;
            while (node->next) {
                node = node->next;
                re = re->next;
            }
            return re;
        }
    };
  • 相关阅读:
    eclipse中包的位置
    404代码错误解决
    servlet-web.xml配置
    java web.xml配置servlet
    1031整理
    1030整理
    rownum
    存储过程和自定义函数的区别
    课堂整理
    练习
  • 原文地址:https://www.cnblogs.com/zmj97/p/7904853.html
Copyright © 2011-2022 走看看