1.先遍历整个链表,求出链表长度,在进行循环找出中间结点

public class Solution {public ListNode middleNode(ListNode head) {int len=0;for(ListNode cur=head;cur!=null;cur=cur.next)len++;//遍历算出链表长度ListNode node=head;for(int i=0;i<len/2;i++)node=node.next;return node;}
}

2.利用快慢指针,定义两个引用,fast指针一次走两步,slow指针一次走一步,直至fast.next=null停止,即为中间结点

public class Solution {public ListNode middleNode(ListNode head) {ListNode fast=head;ListNode slow=head;while(fast!=null){fast=fast.next;if(fast==null){break;}//因为fast每次走两步,有可能走一步时就到了最后(奇数节点时)slow=slow.next;fast=fast.next;}return slow;}
}

返回链表的中间结点,若中间有两个结点,则返回后一个结点(两种方法)相关推荐

  1. java返回链表的中间结点_876. 链表的中间结点

    876. 链表的中间结点 1.题目描述 给定一个带有头结点 head 的非空单链表,返回链表的中间结点. 如果有两个中间结点,则返回第二个中间结点. 2.java编程语言实现 2.1.常规做法 pub ...

  2. flex 固定一列_css实现两列固定与一列自适应的几种方法

    本文介绍了css实现两列固定与一列自适应的几种方法,分享给大家,具体如下: 1.flex布局 Flexible Box 模型,通常被称为 flexbox,是一种一维的布局模型.它给 flexbox 的 ...

  3. java计算两个日期之间相差的天数的四种方法

    计算两个日期之间相差的天数的四种方法 第一种:时间戳的方式,计算两个日期的时间戳的差,再除当天的毫秒数即可得到相差的天数. public static void main(String[] args) ...

  4. python两个元组相加_Python两个字典键同值相加的几种方法

    Python中,如何合并两个键相同,值为元祖类型的字典? dicxs={"李明":("男",19), "杨柳":("女" ...

  5. Python两个字典键同值相加的几种方法

    版权声明:本文为博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn.net/Jerry_1126/article/d ...

  6. python偶数分解成两个素数之和_偶数 2021218918 ,有多少种方法分解成两个素数之和?...

    对于上面问题2N=2021218918,满足"p+q=2N"的素数对(p,q)的个数真值为3289208个.下面对这个值进行理论探求分析,请大家不吝赐教! 下面先来进行基于小素数因 ...

  7. 两台Linux系统之间传输文件的几种方法

    scp传输 当两台LINUX主机之间要互传文件时可使用SCP命令来实现 scp传输速度较慢,但使用ssh通道保证了传输的安全性 复制文件 将本地文件拷贝到远程 scp 文件名 –用户名@计算机IP或者 ...

  8. 实现pc和手机两终端都可以在线播放视频的一种方法

    我是晓文,我来写个博客.目前很多用户的网站,或企业网站要求实现手机在线播放视频,来宣传自己的企业,那么问题来了,如何最简单的快速的实现这样的要求呢?我最近试用了一下酷播云端播放器产品,觉得他们做得还不 ...

  9. 【吉大刘大有数据结构绿皮书】已知非空线性链表第一个结点由list指出,写一算法,交换p所指结点与其下一个结点在链表中的位置(设p指向的不是链表最后的那个结点)。

    题目 已知非空线性链表第一个结点由list指出,写一算法,交换p所指结点与其下一个结点在链表中的位置(设p指向的不是链表最后的那个结点). 思路及解答 本题要求的是在无头链表中交换p结点和p-> ...

  10. LeetCode 876——链表的中间结点

    1. 题目 给定一个带有头结点 head 的非空单链表,返回链表的中间结点. 如果有两个中间结点,则返回第二个中间结点. 示例 1: 输入:[1,2,3,4,5] 输出:此列表中的结点 3 (序列化形 ...

最新文章

  1. mysql8.0安装无法设置密码_安装mysql8.0.16初步设置密码时候遇到的问题
  2. windows2016重新配置sid
  3. 自定义ServicesLoader来实现根据配置使用不通的SPI实现从而实现项目扩展
  4. Radware为夏威夷电信公司全新的DDoS攻击缓解服务提供支持
  5. 健康饮食五谷杂粮系列PPT模板
  6. 父路径_Logtail 新功能:采集路径黑名单
  7. hook 与aspectj_将AspectJ与NetBeans平台开发集成
  8. dcdc芯片效率不高的原因_半导体厂商如何做芯片的出厂测试?
  9. VS2003升级VS2010修改
  10. 学物理也能拿数学世界级奖!每逢实验失败就跑步......河大女生太励志了!!
  11. pycharm在linux安装插件,Pycharm安装go插件,开始go之旅
  12. 柱形图无数据可选中_Excel---多层柱形图来了!让领导看呆
  13. 特斯拉中国工厂2020投产,还可能为完全自动驾驶更新硬件
  14. scrapy架构设计分析
  15. 阿里云成为国内首个时序数据库标准工作组成员
  16. 电子电路仿真软件中文版_软件分享|几款你从未见过的电子电路仿真软件
  17. 2008r2 php mysql_Win2008R2IIS7.5+PHP5(FastCGI)+MySQL5环境搭建教程_MySQL
  18. WIN7开机欢迎界面后黑屏
  19. Keil 5模块化编程详细步骤
  20. grep正则表达式后面的单引号和双引号的区别?

热门文章

  1. 招商证券交易系统宕机上热搜,遭深圳证监局责令整改
  2. 地震观测仪器的历史和发展趋势(一)
  3. linux 查找pcre源码,pcre使用例子
  4. 人脑VS机器? AI时代经济决策的机遇与挑战?
  5. 易维联温湿度记录仪的使用
  6. QT Critical error detected c0000374
  7. Zookeeper-Paxos-屁民的故事-内含视频讲解
  8. android 调用webservice实现手机号码归属地查询
  9. 查看已连接的WiFi密码
  10. Python爬虫自学系列(一)