码迷,mamicode.com
首页 > 其他好文 > 详细

LeetCode 面试题02.02. 返回倒数第k个节点

时间:2020-07-09 19:06:25      阅读:53      评论:0      收藏:0      [点我收藏+]

标签:color   nbsp   div   while   style   双指针   nod   kth   def   

思路描述:采用双指针的思想,让head指针先行移动k个位置,然后head,h同步移动,当head指针移动到链表尾,h指针所指即为倒数第k个节点

LeetCode 代码如下:

/**
 * Definition for singly-linked list.
 * struct ListNode {
 *     int val;
 *     ListNode *next;
 *     ListNode(int x) : val(x), next(NULL) {}
 * };
 */
class Solution {
public:
    int kthToLast(ListNode* head, int k) {
           /*
           双指针,head指针先移动k个位置,h然后从头开始与head同步移动,当head指向链表尾时,h指向倒数k个节点
           */
           ListNode *h;
           h=head;
           int d=0;
           for(;d<k;d++){
               head=head->next;
           }
           while(head){
               head=head->next;
               h=h->next;
           }
           return h->val;
    }
};

 

LeetCode 面试题02.02. 返回倒数第k个节点

标签:color   nbsp   div   while   style   双指针   nod   kth   def   

原文地址:https://www.cnblogs.com/zzw-/p/13275357.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!