leetcode 876.链表的中间结点

补充上次的环形链表没细讲的快慢指针(这三道题现在可以连起来看),希望对你做题思路有帮助


876.链表的中间结点

题目

给你单链表的头结点 head ,请你找出并返回链表的中间结点。

如果有两个中间结点,则返回第二个中间结点。

题目链接

力扣(LeetCode)官网 - 全球极客挚爱的技术成长平台

文字 和 画图 分析

这里用到快慢指针的思想

定义两个指针,一个是 fast指针,另一个是 slow指针,让它们都指向头指针的地址,并且 fast指针 每次都走两步,slow指针 每次都走一步,当 fast指针 走完整个链表,slow指针 只走了它的一半(即中间节点)

这里分两种情况(链表长度为偶数 和 链表长度为奇数):

  1. 链表长度为偶数:

结束条件:fast = NULL

      2. 链表长度为奇数:

结束条件: fast->next = NULL

综上:这个循环进行的条件是 fast && fast->next


代码

struct ListNode* middleNode(struct ListNode* head) 
{
    struct ListNode*slow = head;
    struct ListNode*fast = head;
    while(fast && fast->next)
    {
        slow = slow->next;
        fast = fast->next->next;
    }
    return slow;
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/217121.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

kubernetes监控GPA安装部署

本文在于指导如何对k8s的监控GPA(Grafana,prometheus以及alertmanager)进行安装部署。 1. 介绍 Prometheus 在真正部署Prometheus之前,应了解一下Prometheus的各个组件之间的关系及作用: 1)MertricServer:是k8s集群…

面试官:说说synchronized与ReentrantLock的区别

程序员的公众号:源1024,获取更多资料,无加密无套路! 最近整理了一波电子书籍资料,包含《Effective Java中文版 第2版》《深入JAVA虚拟机》,《重构改善既有代码设计》,《MySQL高性能-第3版》&…

【NI-RIO入门】Real Time(实时系统解释)

1.什么是实时系统? 实时系统可以非常精确可靠的执行需要特定时许要求的系统,对于许多工程项目来说,通用操作系统,例如WINDOWS等标准PC上运行测量和控制程序是无法精确控制计时的,这些系统很容易受用户的其他程序、图像…

联想LJ2655DN激光打印机清零方法

随着打印机的使用越来越频繁,需要更换耗材的时候也越来越多;但是更换上新的耗材后,很多用户都会遇到一个问题,就是更换完新的耗材后打印机仍然提示寿命将近,或者无墨粉盒灯情况,这个时候就需要我们对打印机…

关于使用百度开发者平台处理语音朗读问题排查

错误信息:"convert_offline": false, "err_detail": "16: Open api characters limit reach 需要领取完 识别和合成都要有

Win7 旗舰版打开Rustdesk软件提示无法启动程序 ,计算机中丢失api-ms-win-shcore-scaling-|1-1-1.dll

环境: Win7 旗舰版 64位 Rustdesk1.19自编译客户端 问题描述: Win7 旗舰版打开Rustdesk软件提示无法启动程序 ,计算机中丢失api-ms-win-shcore-scaling-|1-1-1.dll "api-ms-win-shcore-scaling-|1-1-1.dll" 是一个系统动态链接库文件,它是Windows操作系统的一…

Selenium 学习(0.16)——软件测试之测试用例设计方法——白盒测试——逻辑覆盖法(语句覆盖和判定覆盖)

写在前面 今天回来有点晚,因为上午给小伙伴们开了个小会,随便说了些什么,结果小伙伴们下班就没急着走,弄点我还有点不好意思提前走了,就略留了一会。其实也没说什么,就是强调工作要抓点紧,8小时…

【Windows下】Eclipse 尝试 Mapreduce 编程

文章目录 配置环境环境准备连接 Hadoop查看 hadoop 文件 导入 Hadoop 包创建 MapReduce 项目测试 Mapreduce 编程代码注意事项常见报错 配置环境 环境准备 本次实验使用的 Hadoop 为 2.7.7 版本,实验可能会用到的文件 百度网盘链接:https://pan.baidu…

ADB命令集锦,一起来学吧

前言 在测试APP时,我们常常会用到adb命令来协助测试,那么adb命令到底是什么?有什么用?怎么用? 今天我就整理了一些工作中常用的adb知识点,希望对大家有所帮助。 ADB学习全攻略 ADB是什么? a…

【STM32】TIM定时器输出比较

1 输出比较 1.1 输出比较简介 OC(Output Compare)输出比较;IC(Input Capture)输入捕获;CC(Capture/Compare)输入捕获和输出比较的单元输出比较可以通过比较CNT与CCR寄存器值&#…

Apache Sqoop使用

1. Sqoop介绍 Apache Sqoop 是在 Hadoop 生态体系和 RDBMS 体系之间传送数据的一种工具。 Sqoop 工作机制是将导入或导出命令翻译成 mapreduce 程序来实现。在翻译出的 mapreduce 中主要是对 inputformat 和 outputformat 进行定制。 Hadoop 生态系统包括:HDFS、Hi…

python提取通话记录中的时间信息

您需要安装适合中文的SpaCy模型。您可以通过运行 pip install spacypython -m spacy download zh_core_web_sm来安装和下载所需的模型。 import spacy# 加载中文模型 nlp spacy.load(zh_core_web_sm)# 示例电话记录文本 text """ Agent: 今天我们解决一下这…

【模电】基本共射放大电路的工作原理及波形分析

基本共射放大电路的工作原理及波形分析 在上图所示的基本放大电路中,静态时的 I B Q I\tiny BQ IBQ、 I C Q I\tiny CQ ICQ、 U C E Q U\tiny CEQ UCEQ如下图( b )、( c )中虚线所标注。 ( a ) u i 的波形( b ) i B …

fastapi框架可以自动生成接口文档

安装FastAPI pip install fastapi test1.py from fastapi import FastAPIapp FastAPI()app.get("/") def read_root():return {"Hello": "World"}app.get("/items/{item_id}") def read_item(item_id: int, q: str None):#路由处理…

“打败魔法的永远是魔法”——人类应该如何和ChatGPT相处

GPT 的出现不是偶然的,是必然的! 谈起 ChatGPT 不得不提起 GPT,ChatGPT 是基于GPT 模型开发的一种AI交互智能机器人产品,可完成文案编写、代码编写和信息获取等任务。GPT是生成式预训练模型,主要基于 Transformer,目前…

Spring Bean的生命周期各阶段详解附源码

目录 Bean的生命周期Bean定义阶段Bean实例化阶段Bean属性注入阶段Bean初始化阶段Bean销毁阶段 Bean的生命周期 bean的生命周期,我们都知道大致是分为:bean定义,bean的实例化,bean的属性注入,bean的初始化以及bean的销毁…

华为OD机试 - 仿LISP运算 - 逻辑分析(Java 2023 B卷 200分)

目录 专栏导读一、题目描述二、输入描述三、输出描述四、解题思路五、Java算法源码六、效果展示1、输入2、输出3、说明 华为OD机试 2023B卷题库疯狂收录中,刷题点这里 专栏导读 本专栏收录于《华为OD机试(JAVA)真题(A卷B卷&#…

C语言数组(上)

# 数组的概念 数组是一组相同类型元素的集合。数组中存放的是一个或多个数据,但是数组中的元素个数不能为零;数组中存放的所有元素(数据)的类型必须是相同的。 数组分为一维数组和多维数组,多维数组一般比较多见的是二…

LoadBalancer将服务暴露到外部实现负载均衡purelb-layer2模式配置介绍

目录 一.purelb简介 1.简介 2.purelb的layer2工作模式特点 二.layer2的配置演示 1.首先准备ipvs和arp配置环境 2.purelb部署开始 (1)下载purelb-complete.yaml文件并应用 (2)查看该有的资源是否创建完成并运行 &#xff…

安美数字酒店宽带运营系统 SQL注入漏洞复现

0x01 产品简介 HiBOS酒店宽带运营系统隶属于安美世纪(北京)科技有限公司开发的一套酒店宽带管理系统。 0x02 漏洞概述 安美数字酒店宽带运营系统 online_status.php、language.php等接口处存在SQL注入漏洞,未经身份认证的攻击者可以通过此漏洞获取数据库权限,进一步利用可…