当前位置:   article > 正文

Leetcode-面试题 02.02:返回倒数第 k 个节点

Leetcode-面试题 02.02:返回倒数第 k 个节点

题目链接

https://leetcode-cn.com/problems/kth-node-from-end-of-list-lcci/

题目

实现一种算法,找出单向链表中倒数第 k 个节点。返回该节点的值。

注意:本题相对原题稍作改动

示例

输入: 1->2->3->4->5 和 k = 2
输出: 4

说明

给定的 k 保证是有效的。

思路

本题和Leetcode-剑指 Offer 22: 链表中倒数第k个节点几乎一模一样,可参考该题思路。

C++ Code

  1. /**
  2. * Definition for singly-linked list.
  3. * struct ListNode {
  4. * int val;
  5. * ListNode *next;
  6. * ListNode(int x) : val(x), next(NULL) {}
  7. * };
  8. */
  9. class Solution {
  10. public:
  11. int kthToLast(ListNode* head, int k) {
  12. int n=0;
  13. ListNode* cur=head;
  14. while(cur!=NULL)
  15. {
  16. n++; cur=cur->next;
  17. }
  18. cur=head;
  19. int i=0;
  20. if(n-k-1>=0)
  21. {
  22. while(i!=n-k)
  23. {
  24. cur=cur->next; i++;
  25. }
  26. }
  27. return cur->val;
  28. }
  29. };

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/黑客灵魂/article/detail/758832
推荐阅读
相关标签
  

闽ICP备14008679号