欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 编程资源 > 编程问答 >内容正文

编程问答

剑指offer:链表中倒数第k个节点

发布时间:2025/4/5 编程问答 47 豆豆
生活随笔 收集整理的这篇文章主要介绍了 剑指offer:链表中倒数第k个节点 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

文章目录

      • 分析
      • 题目来源

分析

方法:顺序查找

第一步:求链表长度n
第二步:倒数第k个结点,就是前面第n-k+1个结点,也就是表头结点往后移动n-k次。

ac代码

/*** Definition for singly-linked list.* struct ListNode {* int val;* ListNode *next;* ListNode(int x) : val(x), next(NULL) {}* };*/ class Solution { public:ListNode* getKthFromEnd(ListNode* head, int k) {int n = 0;for(auto p = head; p; p = p->next) n ++;if (k > n) return nullptr;auto p = head;for(int i = 0; i < n - k; i ++) p = p->next;return p;} };

题目来源

https://www.acwing.com/problem/content/32/

总结

以上是生活随笔为你收集整理的剑指offer:链表中倒数第k个节点的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。