LCR 140. 训练计划 II - 倒数第 cnt 个训练项目编号
题目描述
给定一个头节点为 head 的链表,用于记录一系列核心肌群训练项目的编号。请你查找并返回倒数第 cnt 个训练项目编号。
示例 1:
输入:head = [2, 4, 7, 8], cnt = 1
输出:8
提示:
1 <= head.length <= 1000 <= head[i] <= 1001 <= cnt <= head.length
解题分析
这道题的本质是在链表中查找倒数第 cnt 个元素。由于链表是顺序存储的,没有随机访问的能力,我们需要通过遍历链表来找到目标元素。传统的遍历方法通常是使用 O(n) 的时间复杂度,这对于这个题目来说是可接受的,因为链表的长度最大为 100。
然而,题目希望我们在查找倒数第 cnt 个元素时,能够优化我们的代码,使其更加高效和易于理解。直接遍历两次链表虽然能解决问题,但我们可以考虑更优的解决方案。
解题方法
我们可以使用 快慢指针 的技巧,解决这类倒数查找问题。快慢指针是一种常见的链表

最低0.47元/天 解锁文章
289

被折叠的 条评论
为什么被折叠?



