leetcode---LCR 140.训练计划

给定一个头节点为 head 的链表用于记录一系列核心肌群训练项目编号,请查找并返回倒数第 cnt 个训练项目编号。

示例 1:

复制代码
输入:head = [2,4,7,8], cnt = 1
输出:8

提示:

  • 1 <= head.length <= 100
  • 0 <= head[i] <= 100
  • 1 <= cnt <= head.length

题解:

要返回倒数第cnt个节点,可以使用快慢指针。

先让fast指针先走cnt个结点,然后fast和slow一起走,直到fast为NULL时,停下来,此时slow指针指向的结点就是要返回的结点

举个例子:

复制代码
/**
 * Definition for singly-linked list.
 * struct ListNode {
 *     int val;
 *     struct ListNode *next;
 * };
 */
struct ListNode* trainingPlan(struct ListNode* head, int cnt) {
    struct ListNode*fast=head;
    struct ListNode*slow=head;
    while(cnt--)//快指针先走k步
    {
        fast=fast->next;
    }
    while(fast!=NULL)
    {
        fast=fast->next;
        slow=slow->next;
    }
    return slow;
}
相关推荐
GSDjisidi1 小时前
东京IT软件会社-(株)GSD|多种技术栈募集,高度人才+20分
开发语言·面试·职场和发展
qq_433554542 小时前
C++数位DP
c++·算法·图论
AshinGau3 小时前
Softmax 与 交叉熵损失
神经网络·算法
似水এ᭄往昔3 小时前
【C++】--AVL树的认识和实现
开发语言·数据结构·c++·算法·stl
栀秋6663 小时前
“无重复字符的最长子串”:从O(n²)哈希优化到滑动窗口封神,再到DP降维打击!
前端·javascript·算法
xhxxx3 小时前
不用 Set,只用两个布尔值:如何用标志位将矩阵置零的空间复杂度压到 O(1)
javascript·算法·面试
有意义3 小时前
斐波那契数列:从递归到优化的完整指南
javascript·算法·面试
charlie1145141913 小时前
编写INI Parser 测试完整指南 - 从零开始
开发语言·c++·笔记·学习·算法·单元测试·测试
mmz12074 小时前
前缀和问题2(c++)
c++·算法
TL滕4 小时前
从0开始学算法——第十六天(双指针算法)
数据结构·笔记·学习·算法