给定一个链表,删除链表的倒数第 n 个节点,并且返回链表的头结点。(C++实现)

2023-11-03

题目介绍

给定一个链表,删除链表的倒数第 n 个节点,并且返回链表的头结点。
示例:

给定一个链表: 1->2->3->4->5, 和 n = 2.

当删除了倒数第二个节点后,链表变为 1->2->3->5.
说明:

给定的 n 保证是有效的。

题目分析

典型的快慢指针系列,不过需要注意边界条件,详细思路见源码

源代码

/**
 * Definition for singly-linked list.
 * struct ListNode {
 *     int val;
 *     ListNode *next;
 *     ListNode(int x) : val(x), next(NULL) {}
 * };
 */
class Solution {
public:
    ListNode* removeNthFromEnd(ListNode* head, int n) 
    {
        if(head==NULL)
            return NULL;
        ListNode* fast=head;
        ListNode* slow=head;
        for(int i=0;i<n;i++)
        {
            fast=fast->next;
        }
        if(fast==NULL)
        {
            head=head->next;
            return head;
        }
        while(fast->next!=NULL)
        {
            fast=fast->next;
            slow=slow->next;
        }
        slow->next=slow->next->next;
        return head;
    }    
};
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

给定一个链表,删除链表的倒数第 n 个节点,并且返回链表的头结点。(C++实现) 的相关文章

  • 发布一个开源的新闻api(整理后就开源)

    目录 说明 基础说明 其他说明 通用接口 登录 注册 更改密码 需要token 更换头像 需要token 获取用户列表 需要token 上传文件 5000端口 获取文件 5000端口 源码文件 db文件均不能获取 验证token 需要tok
  • Java技术——内部类

    内部类 inner class 定义 在一个类中定义另外一个类 这个类就叫做内部类 优点 内部类可以让我们将逻辑上相关的一组类组织起来 并由外部类来控制内部类的可见性 当我们建立一个内部类时 其对象 就拥有了与外部类对象 之间的一种关系 这
  • pid算法C语言实现

    理论我就不多说了 网都已经很多了 但能直接看到效果的确不多 这里我就提供一个 语言实现的可以看到效果的实际例程 pid h ifndef PID H define PID H typedef struct pid int error las

随机推荐

  • [1023]fastText文本分类算法

    文章目录 简介 模型架构 分层 softmax Hierarchical softmax N grams 特征 使用 fastText 运行速度快的原因 fasttext参数 github https github com facebook
  • 如何利用《新概念英语》练习听力?

    新概念英语 是很好的教材 如何将它变成优秀的听力材料呢 第一步 不要看书 将整篇课文听写下来 如果有的词听不出来 猜测该词应该是什么 实在听不出来就不勉强 随着听写的增多 听力会逐渐增强 在听的过程中 也可加深对英语发音的认识 而且实践证明
  • 【论文翻译-2】BiO-Net: Learning Recurrent Bi-directional Connections for Encoder-Decoder Architecture

    BiO Net Learning Recurrent Bi directional Connections for Encoder Decoder Architecture 源自 MICCAI2020 Medical Image Compu
  • Apache logs目录下找不到access_log文件

    目录 一 实验 1 Apache logs目录下找不到access log文件 一 实验 1 Apache logs目录下找不到access log文件 1 问题 apache服务器logs目录下 没有access log文件 2 解决方法
  • Python学习笔记之几点代码格式要求

    1 缩进 通常我们都是用Tab制表符进行代码缩进 但是标准来说是要用4个空格进行缩进 如果代码工具可以设置按Tab自动转换为4个空格 那就设置一下吧 想想之前写的代码没有用4个空格 代码规范很重要 在需要缩进的地方都使用四个空格 可提高可读
  • 【LSTM分类】基于注意力机制的卷积神经网络结合长短记忆神经网络CNN-LSTM-attention实现数据分类附matlab代码

    作者简介 热爱科研的Matlab仿真开发者 修心和技术同步精进 matlab项目合作可私信 个人主页 Matlab科研工作室 个人信条 格物致知 更多Matlab仿真内容点击 智能优化算法 神经网络预测 雷达通信 无线传感器 电力系统 信号
  • 爬虫手册04 Splash的使用

    Splash的使用 目标 作为Selenium的备选方案 加载js渲染后的浏览器数据 安装方法 https blog csdn net weixin 40743639 article details 122833394 spm 1001 2
  • 《英语(二)》作文案例

    翻译文章 1 More than twenty years ago my hometown was just a small old and poor town Most of people were farmers There were
  • GLES3.0中文API-glGetQueryObjectuiv

    名称 glGetQueryObjectuiv 返回查询对象的参数 C规格 void glGetQueryObjectuiv GLuint id GLenum pname GLuint params 参数 id 指定查询对象的名称 pname
  • js逆向解析,js爬虫

    废话不多说 直接开干 吸取了百度精华 来写文章了 难度系数 两颗星 大概逻辑 1 请求url 2 找到请求参数 3 分析参数产生过程 4 整合参数 1 请求url http fanyi youdao com 2 找到请求参数 3 分析参数产
  • SQL中的循环、for循环、游标

    SQL中的循环 for循环 游标 1 利用游标循环更新 删除MemberAccount表中的数据 DECLARE My Cursor CURSOR 定义游标 FOR SELECT FROM dbo MemberAccount 查出需要的集合
  • K8S的概念和基本应用

    学习视频 Kubernetes基本概念和应用 哔哩哔哩 bilibili 零 架构概览 master节点 管理调度集群资源 一般为多节点构成 可以是物理机 也可以是虚拟机 worker节点 资源的提供者 一般为多节点构成 可以是物理机 也可
  • 在vue项目当中实现对某个数据的复制vue-clipboard2

    在vue项目当中实现对某个数据的复制 运用插件是十分方便快捷的vue clipboard2 安装 npm install save vue clipboard2 main js import Vue from vue import VueC
  • 推荐-社交推荐相关

    总结 近时间矩阵分解 社交信息的融合模型 2018 模型性能 不同社交推荐方法在不同数据集中不同用户社交强度下的性能对比 研究难点与热点 数据稀疏性 社交关系的有效挖掘 社交噪声 可解释性社交推荐 可扩展型社交推荐模型与多源信息的融合 社交
  • Linux 面试常见(55题)

    TOC删除线格式 一 文件管理 目录操作 创建目录 mkdir mkdir命令可以创建一个新的目录 例如 在当前目录下创建一个名为 test 的目录 mkdir test 2 删除目录 rmdir rmdir命令可以删除一个空目录 例如 要
  • 结构体输入输出(c语言)

    include
  • 实现Echarts词云和随机颜色(vue2)

    1 首先需要安装echarts和echarts wordcloud插件 2 echarts的版本和echarts wordcloud版本有对应要求才能实现 否则会报错 经过查询如果是用的是echarts4那么需要对应着echarts wor
  • python自动化课程笔记(十一)封装、继承、多态

    class Dog object good dog 说明文档 def init self new name color age 5 self name new name self color color self age age def s
  • Tomcat安装及部署

    Aphorism 安装 忽略下载过程 1 解压文件 把 tomcat 安装包解压到 D Program Files 下 2 启动 tomcat 在 tomcat 文件包的 bin 文件夹中 双击 startup bat 文件启动tomcat
  • 给定一个链表,删除链表的倒数第 n 个节点,并且返回链表的头结点。(C++实现)

    题目介绍 给定一个链表 删除链表的倒数第 n 个节点 并且返回链表的头结点 示例 给定一个链表 1 gt 2 gt 3 gt 4 gt 5 和 n 2 当删除了倒数第二个节点后 链表变为 1 gt 2 gt 3 gt 5 说明 给定的 n