LeetCode-160. 相交链表

2023-11-18

在这里插入图片描述
这是一道真的非常巧妙的题,题解思路如下:
如果让他们尾端队齐,那么从后面遍历就会很快找到第一个相交的点。但是逆序很麻烦。
于是有一个巧妙的思路诞生了,如果让短的先走完自己的再走长的,长的走完走短的,他俩就会正好对齐。
于是:

/**
 * Definition for singly-linked list.
 * public class ListNode {
 *     public int val;
 *     public ListNode next;
 *     public ListNode(int x) { val = x; }
 * }
 */
public class Solution {
    public ListNode GetIntersectionNode(ListNode headA, ListNode headB) {
        ListNode l1 = headA, l2 = headB;
            while(l1 != l2)
            {
                l1 = l1.next;
                l2 = l2.next;

                //无相交
                if (l1 == null && l2 == null) break;
                //不等长交换
                if (l1 == null) l1 = headB;
                if (l2 == null) l2 = headA;

            }
            return l1;
    }
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

LeetCode-160. 相交链表 的相关文章

随机推荐

  • java与jsp的关系_浅谈servlet与jsp的关系

    servlet是用java语言编写的 是一个java类 主要功能是用来接受 处理客户端的请求 并把处理结果返回到客户端显示 Jsp是servlet发展后期的产物 在没有jsp之前 servlet利用输出流动态生成整个HTML页面 输出内容包
  • 数字人解决方案——实时对话数字人源码与环境配置

    前言 1 从技术角度来看 现在的数字人就是一个缝合怪 把各种技术点都整合在一起 用来实现直播 对话等数字人 技术流程大概如下图 其实最重要的一环应该属于LLM 大型语言模型 LLM相当于一个人的意识 如果没有LLM 这一套完全没有深度 2
  • 锁介绍名词解释&&Lock && synchronized

    各种锁名词解释及应用 一 名词解释 1 乐观锁 VS 悲观锁 2 自旋锁 VS 适应性自旋锁 3 无锁 VS 偏向锁 VS 轻量级锁 VS 重量级锁 4 公平锁 VS 非公平锁 5 可重入锁 VS 非可重入锁 6 独享锁 VS 共享锁 二
  • QT学习经验之父子通信

    QT父子通信两种方式 第一种获取父部件 MainWindow par MainWindow parentWidget 第二种利用信号和槽 父发射带参数的信号给子 父部件中 定义 发射信号 子部件中 定义槽 连接信号和槽 connect pa
  • CTF-----RE练习题(二)

    学习打卡篇八 每天学习一点点 认识壳 在一些计算机软件里有一段专门负责保护软件不被非法修改或反编译的程序 它们一般都是先于程序运行 拿到控制权 然后完成它们保护软件的任务 由于这段程序和自然界的壳在功能上有很多相同的地方 所以就把这样的程序
  • 解决 Column count doesn‘t match value count at row 1 的可能思路

    今天遇到这个问题 Column count doesn t match value count at row 1 很明显说的是列不匹配 示例是 insert into user colum1 colum2 colum3 但是values是
  • 错题集 zabbix--yaml

    报错环境 一 ansible yaml root server1 vim Apcha yaml hosts mysql remote user root tasks name yum httpd yum name httpd name st
  • .NET 8发布首个RC,比.NET 7的超级快更快

    NET 8 发布了首个 RC 据称 RC 阶段会发布两个版本 正式版将于 2023 年 11 月 14 日至 16 日在 NET Conf 2023 上推出 NET 8 是长期支持 LTS 版本 将会获得 3 年技术支持 公告写道 此版本为
  • win服务器开虚拟空间,win虚拟空间如何实现301重定向

    对于个人站长来说 window服务器的国内虚拟空间并不陌生 它不像apache那样可以支持 强大的 htaccess文件 对于站长来说 301重定向更不陌生 基本的将不带www的域名301指向带www的域名 如何实现这步 网上一大堆资料没几
  • 网络地址和广播地址

    1 总述 IP地址使用32位二进数表示 每一个主机或路由器的接口都有全局唯一的IP地址 NAT是个例外 它由网络号 NetID 和主机号 HostID 组成 它可以分为五类 如下 2 地址划分 1 A类地址 其中A类地址的前8位是网络号 后
  • 【超级无敌详细的韩顺平java笔记】从入门到精通---四种进制介绍

    1 进制介绍 对于整数 有四种表示方式 二进制 0 1 满 2 进 1 以 0b 或 0B 开头 十进制 0 9 满 10 进 1 八进制 0 7 满 8 进 1 以数字 0 开头表示 十六进制 0 9 及 A 10 F 15 满 16 进
  • 【Docker】Docker-compose容器编排的使用

    怒目的在CentOS系统中部署安装Docker compose容器编排服务 使用Docker compose服务构建Python Web镜像和容器 1 安装Docker compose 1 通过实训平台进入到操作系统界面 在 后输入yum
  • Eclipse中配置apache(包括apache下载、环境配置,添加eclipse)

    一开始是项目出现错误 The superclass javax servlet http HttpServlet was not found on the Java Build Path 解决方法 就是添加apache 但是过程有很曲折 还
  • Python注释(多行注释和单行注释)用法详解

    注释 Comments 用来向用户提示或解释某些代码的作用和功能 它可以出现在代码中的任何位置 Python 解释器在执行代码时会忽略注释 不做任何处理 就好像它不存在一样 在调试 Debug 程序的过程中 注释还可以用来临时移除无用的代码
  • 第1194期机器学习日报(2017-12-25)

    机器学习日报 2017 12 25 使用深度学习构建先进推荐系统 近期33篇重要研究概述 机器之心Synced 2017十大突破性技术之增强学习 爱可可 爱生活 半监督学习在图像分类上的基本工作方式 机器之心Synced 为给定任务自动生成
  • OpenCV仿射变换实现——Python代码案例

    OpenCV仿射变换实现 Python代码案例 OpenCV是一个基于Python的开源计算机视觉库 可以帮助我们进行图像处理和计算机视觉方面的研究 其中 仿射变换是一种常见的图像处理方法 可以实现旋转 放大 缩小 平移等功能 本文将介绍如
  • APP渗透 之 脱壳

    前言 随着人们安全意识越来越加强 很多开发者逐渐开始加shell也就是壳 所以脱壳 砸壳还是很有必要会的 1 Frida是什么 Frida是一款易用的跨平Hook 工具 Java 层到 Native 层的 Hook 无所不能 是一种 动态
  • elementui的分页中的页面查看详情后返回当前页

    列表页 methods 改变页数 currentChange val this page currentPage val 缓存当前页码数 sessionStorage setItem currentPage val 调取表格列表接口 thi
  • 获取svg和svg内容的方法

    方法一 使用正则表达式 1 先找到div中包含的所有内容 2 然后用正则表达式匹配svg开头 svg结束的标签 var data window layout canvas html var content window svg html v
  • LeetCode-160. 相交链表

    这是一道真的非常巧妙的题 题解思路如下 如果让他们尾端队齐 那么从后面遍历就会很快找到第一个相交的点 但是逆序很麻烦 于是有一个巧妙的思路诞生了 如果让短的先走完自己的再走长的 长的走完走短的 他俩就会正好对齐 于是 Definition