当前位置: 首页 > news >正文

leetcode---返回链表的中间节点

问题描述

给定一个头结点为 head 的非空单链表,返回链表的中间结点。如果有两个中间结点,则返回第二个中间结点。

示例 1:

输入:[1,2,3,4,5]
输出:此列表中的结点 3 (序列化形式:[3,4,5])
返回的结点值为 3 。 (测评系统对该结点序列化表述是 [3,4,5])。
注意,我们返回了一个 ListNode 类型的对象 ans,这样:ans.val = 3, ans.next.val = 4, ans.next.next.val = 5, 以及 ans.next.next.next = NULL.

来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/middle-of-the-linked-list

问题分析

快慢指针法:开始两个指针都指向链表的头节点,快指针依次走两个节点,慢指针一次走一个节点,当快指针走到链表的最后一个节点时慢指针刚好走到链表的中间节点,返回慢指针即可。

c语言程序

struct ListNode* middleNode(struct ListNode* head){
    //快慢指针法
    struct ListNode *fast = head;
    struct ListNode *slow = head;

    while(fast && fast->next)
    {
        fast = fast->next->next;
        slow = slow->next;
    }
    return slow;
}


 

相关文章:

  • 学生成绩管理系统---数据结构、C语言课程设计
  • 数据结构课程设计---学生成绩管理系统
  • leetcode---环形链表(快慢指针证明)
  • leetcode---环形链表II
  • 剑指offer---复制带随机值的链表
  • Linux---进程概念
  • 数据结构---顺序表和链表
  • C语言课程设计---诗歌管理系统
  • 数据结构---栈和队列(栈、队列、循环队列)
  • leetcode---用两个栈实现队列
  • leetcode---用队列实现栈
  • 数据结构---堆的构建和堆排序(向下、向上调整算法)
  • Linux---进程间通信
  • LeetCode---交换链表中的节点
  • leetcode---数组中重复的数字(非常牛逼的置换算法)、原地置换算法排序
  • 【编码】-360实习笔试编程题(二)-2016.03.29
  • HTTP 简介
  • JavaScript的使用你知道几种?(上)
  • Linux下的乱码问题
  • Material Design
  • select2 取值 遍历 设置默认值
  • 开放才能进步!Angular和Wijmo一起走过的日子
  • 前端临床手札——文件上传
  • 前端之Sass/Scss实战笔记
  • 深入浅出Node.js
  • 为物联网而生:高性能时间序列数据库HiTSDB商业化首发!
  • 怎么将电脑中的声音录制成WAV格式
  • 关于Android全面屏虚拟导航栏的适配总结
  • ​secrets --- 生成管理密码的安全随机数​
  • ​Spring Boot 分片上传文件
  • ​如何使用ArcGIS Pro制作渐变河流效果
  • ​一、什么是射频识别?二、射频识别系统组成及工作原理三、射频识别系统分类四、RFID与物联网​
  • #LLM入门|Prompt#2.3_对查询任务进行分类|意图分析_Classification
  • (2)nginx 安装、启停
  • (AtCoder Beginner Contest 340) -- F - S = 1 -- 题解
  • (TOJ2804)Even? Odd?
  • (附源码)spring boot基于Java的电影院售票与管理系统毕业设计 011449
  • (没学懂,待填坑)【动态规划】数位动态规划
  • (转)使用VMware vSphere标准交换机设置网络连接
  • (转)项目管理杂谈-我所期望的新人
  • ***测试-HTTP方法
  • *p++,*(p++),*++p,(*p)++区别?
  • ..thread“main“ com.fasterxml.jackson.databind.JsonMappingException: Jackson version is too old 2.3.1
  • .[backups@airmail.cc].faust勒索病毒的最新威胁:如何恢复您的数据?
  • .MSSQLSERVER 导入导出 命令集--堪称经典,值得借鉴!
  • .Net Core webapi RestFul 统一接口数据返回格式
  • .Net 垃圾回收机制原理(二)
  • .NET/C# 的字符串暂存池
  • .Net程序帮助文档制作
  • 。Net下Windows服务程序开发疑惑
  • /boot 内存空间不够
  • @cacheable 是否缓存成功_让我们来学习学习SpringCache分布式缓存,为什么用?
  • [20190401]关于semtimedop函数调用.txt
  • [23] GaussianAvatars: Photorealistic Head Avatars with Rigged 3D Gaussians
  • [AS3]URLLoader+URLRequest+JPGEncoder实现BitmapData图片数据保存