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

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

    代码:

     1 /*
     2 struct ListNode {
     3     int val;
     4     struct ListNode *next;
     5     ListNode(int x) :
     6             val(x), next(NULL) {
     7     }
     8 };*/
     9 class Solution {
    10 public:
    11     ListNode* FindKthToTail(ListNode* pListHead, unsigned int k) {
    12         ListNode* p = pListHead;
    13         ListNode* q = pListHead;
    14         unsigned int i = 0;
    15         for( ;p != NULL; i ++){
    16             if( i >= k)
    17                 q = q->next;
    18             p = p->next;
    19         }
    20         return i < k ? NULL : q;
    21     }
    22 };

    我的笔记:本题的方法是根据,是因为倒数第 k 个的位置与头节点 q 的位置差,正好等于当 p 走过 k 个节点时与尾结点的差。

  • 相关阅读:
    yaffs和jffs2简单比较
    UBI文件系统简介
    非零即1的一种算法
    UBIFS介绍
    MTD
    ubifs & mtd
    ubifs笔记
    UBIFS 术语
    ubi层次
    faststone 注册码
  • 原文地址:https://www.cnblogs.com/john1015/p/12926287.html
Copyright © 2011-2022 走看看