leetcode876. 链表的中间结点
leetcode876. 链表的中间结点
题目描述
链接: leetcode876.
给定一个头结点为 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.
示例2:
输入:[1,2,3,4,5,6]
输出:此列表中的结点 4 (序列化形式:[4,5,6])
由于该列表有两个中间结点,值分别为 3 和 4,我们返回第二个结点
题解
快慢指针
- java解法
public class Leetcode876 {class ListNode {int val;ListNode next;ListNode(int x) {val = x;next = null;}}public ListNode middleNode(ListNode head) {ListNode slow = head;ListNode fast = head;while (fast != null && fast.next != null) {slow = slow.next;fast = fast.next.next;}return slow;}
}
- golang解法
type ListNode struct {Val intNext *ListNode
}func middleNode(head *ListNode) *ListNode {fast, slow := head, headfor fast != nil && fast.Next != nil {fast = fast.Next.Nextslow = slow.Next}return slow
}
leetcode876. 链表的中间结点相关推荐
- leetcode-876. 链表的中间结点解法
给定一个带有头结点 head 的非空单链表,返回链表的中间结点. 如果有两个中间结点,则返回第二个中间结点. 示例 1: 输入:[1,2,3,4,5] 输出:此列表中的结点 3 (序列化形式:[3,4 ...
- LeetCode-876. 链表的中间结点 C语言
876. 链表的中间结点 给定一个头结点为 head 的非空单链表,返回链表的中间结点. 如果有两个中间结点,则返回第二个中间结点. 示例 1: 输入:[1,2,3,4,5] 输出:此列表中的结点 3 ...
- LeetCode-876. 链表的中间结点
题目 给定一个带有头结点 head 的非空单链表,返回链表的中间结点. 如果有两个中间结点,则返回第二个中间结点. 示例 1: 输入:[1,2,3,4,5] 输出:此列表中的结点 3 (序列化形式:[ ...
- leetcode876.链表的中间结点
文章目录 前言 一.方法一 二.方法二 总结 前言 leetcode新手村876.链表的中间结点 提示:以下是本篇文章正文内容,下面案例可供参考 一.方法一 第一种方法: 首先遍历一遍链表,记录下节点 ...
- LeetCode 876——链表的中间结点
1. 题目 给定一个带有头结点 head 的非空单链表,返回链表的中间结点. 如果有两个中间结点,则返回第二个中间结点. 示例 1: 输入:[1,2,3,4,5] 输出:此列表中的结点 3 (序列化形 ...
- Leetcode 876. 链表的中间结点 (每日一题 20210918)
给定一个头结点为 head 的非空单链表,返回链表的中间结点.如果有两个中间结点,则返回第二个中间结点.示例 1:输入:[1,2,3,4,5] 输出:此列表中的结点 3 (序列化形式:[3,4,5]) ...
- 876. 链表的中间结点(C语言)
**给定一个头结点为 head 的非空单链表,返回链表的中间结点. 如果有两个中间结点,则返回第二个中间结点. 示例 1: 输入:[1,2,3,4,5] 输出:此列表中的结点 3 (序列化形式:[3, ...
- 七十一、去重交换排序链表、 求链表的中间结点
@Author:Runsen 编程的本质来源于算法,而算法的本质来源于数学,编程只不过将数学题进行代码化. ---- Runsen 最近在重新梳理学算法的知识,本文为链表常见操作复习的总结文章,会讲解 ...
- LeetCode Algorithm 876. 链表的中间结点
876. 链表的中间结点 Ideas 这题直接秒杀吧,快慢指针,快指针一次走两步,慢指针一次走一步,快指针到头之后慢指针正好到链表中间. Code C++ class Solution {public ...
最新文章
- JS控制图片显示的大小(图片等比例缩放)
- 图解TCP协议中的三次握手和四次挥手
- python 抛出异常与自定义异常raise
- dynamic-insert=true dynamic-update=true,插入默认值的情况
- 学习笔记--------分布式事务产生的场景
- 求一个向量变换为另一个向量的矩阵_OpenGL里旋转等变换矩阵为什么是4x4的矩阵...
- lightOJ 1132 Summing up Powers(矩阵 二分)
- phoneGap可行性分析
- mysql的本地id可以随便设置马_Mysql主从复制原理及搭建
- 虚拟机单一网卡设置两个IP
- TP5实践小总结(1)
- Vim 配置详解_wuyang
- tree 命令以树状图列出目录的内容
- 社交APP软件开发流程解析
- 毕向东_Java基础
- NorthWind 数据库整体关系
- TI am3352 gpio 驱动
- 查看弹出广告来自哪个软件
- hud 6078 Wavel Sequence
- 在带有双硬盘的Windows10系统上安装Ubuntu16.04系统
热门文章
- python完全支持面向对象编程思想_面向对象的编程思想和Python的继承和多态,特殊方法,引用计数...
- sqlyog如何设置.时提示字段名_Spring boot 中使用 Tomcat时 用户名 密码如何设置呢?...
- idea解决activiti(*.bpmn)文件乱码问题。
- HashMap由浅入深(jdk8)
- mysql数据库sql注入原理_sql注入原理详解(一)
- webpack4学习之问题一
- Spring模块介绍
- Python数据科学|第一章:数据科学家的武器库
- 【优达学城测评】SQLite 安装(2)
- Android第四十五天