相交链表(Leetcode)
题目分析:
. - 力扣(LeetCode)
相交链表:首先我想到的第一个思路是:如图可知,A和B链表存在长度差,从左边一起遍历链表不好找交点,那我们就从后面开始找,但是这是单链表,没有 prev 指针,所以只能反转链表 A、B。反转之后再从A、B头结点开始就可以找到相遇点,但是题目要求我们不能改变链表的结构,所以此方法不行。
方法一:
思路:
①当链表有一个为空,或者两个都为空的时候,直接返回NULL。
②因为链表存在差值,结点个数不同,不能一起遍历,所以我们可以求出A和B各自的结点个数,然后求出差值。
③差值有了之后,我们可以让长的链表先走差值步,相对于抹掉了差值。
④最后A、B链表一起走,如果地址相等就表示相遇了,就返回交点处的地址,如果没有相遇,就返回NULL
struct ListNode* getIntersectionNode(struct ListNode* headA,struct ListNode* headB) {struct ListNode* curA = headA;struct ListNode* curB = headB;if (curA == NULL || curB == NULL)return NULL;//求链表A、B各自的长度int la = 0;int lb = 0;while (curA) {curA = curA->next;++la;}while (curB) {curB = curB->next;++lb;}//找到两个链表中较长的那个struct ListNode* longest = headA;struct ListNode* shortest = headB;if (la < lb) {longest = headB;shortest = headA;}//求出差值,然后先让长的链表走完差值int gap = abs(la - lb);while (gap--) {longest = longest->next;}//同时出发,直到相遇,否则没有相遇while (longest) {if (longest == shortest)return longest;longest = longest->next;shortest = shortest->next;}return NULL;
}
方法二:
思路:
①当链表有一个为空,或者两个都为空的时候,直接返回NULL。
②相当于两个指针在一个路线上走、走的路程都是一样的
A先走完自己的路程,然后去走B的路程
B先走完自己的路程,然后去走A的路程
A和B走到路一样长
如果存在相遇点,A和B必定会相遇 (如果不是很明白可以对着代码,画图去理解一下)
如果不存在相遇点,就在NULL处相遇
struct ListNode* getIntersectionNode(struct ListNode* headA,struct ListNode* headB) {if (headA==NULL || headB==NULL){return NULL;}struct ListNode* A = headA;struct ListNode* B = headB;while (A != B) {A = A ? A->next : headB; B = B ? B->next : headA;}return A;
}
相关文章:
![](https://img-blog.csdnimg.cn/direct/ebe0fdf82fca49bb91c1ea2a50213859.png)
相交链表(Leetcode)
题目分析: . - 力扣(LeetCode) 相交链表:首先我想到的第一个思路是:如图可知,A和B链表存在长度差,从左边一起遍历链表不好找交点,那我们就从后面开始找,但是这是单链表&…...
![](https://img-blog.csdnimg.cn/direct/a691505a44d148c480554c4cb84cadf2.png)
建造者模式(大话设计模式)C/C++版本
建造者模式 C 参考:https://www.cnblogs.com/Galesaur-wcy/p/15907863.html #include <iostream> #include <vector> #include <algorithm> #include <string> using namespace std;// Product Class,产品类,由多个…...
![](https://img-blog.csdnimg.cn/direct/dd47fc8de7834e9fb23c740ff7f5e0a6.jpeg)
【地质灾害监测实现有效预警,44人提前安全转移】
6月13日14时,国信华源地质灾害监测预警系统提前精准预警,安全转移10户44人。 该滑坡隐患点通过科学部署国信华源裂缝计、倾角加速度计、雨量计、预警广播等自动化、智能化监测预警设备,实现了对隐患点裂缝、位移、降雨量等关键要素的实时动态…...
![](https://www.ngui.cc/images/no-images.jpg)
Ruby 数据库访问 - DBI 教程
Ruby 数据库访问 - DBI 教程 本文将详细介绍如何使用 Ruby 的 DBI(Database Interface)库来访问和操作数据库。DBI 是 Ruby 语言中一个常用的数据库接口库,它提供了一套统一的接口来访问不同的数据库系统,如 MySQL、PostgreSQL、SQLite 等。通过本文的学习,您将掌握如何使…...
![](https://img-blog.csdnimg.cn/direct/d10f0d873ed04c1baa9cf6fbe2f8dbf3.png)
Linux环境搭建之CentOS7(包含静态IP配置)
🔥 本文由 程序喵正在路上 原创,CSDN首发! 💖 系列专栏:虚拟机 🌠 首发时间:2024年6月22日 🦋 欢迎关注🖱点赞👍收藏🌟留言🐾 安装VMw…...
![](https://img-blog.csdnimg.cn/direct/06e07a76e83f46828b4ca66e9f0b3c92.png)
Dell戴尔灵越Inspiron 16 Plus 7640/7630笔记本电脑原装Windows11下载,恢复出厂开箱状态预装OEM系统
灵越16P-7630系统包: 链接:https://pan.baidu.com/s/1Rve5_PF1VO8kAKnAQwP22g?pwdjyqq 提取码:jyqq 灵越16P-7640系统包: 链接:https://pan.baidu.com/s/1B8LeIEKM8IF1xbpMVjy3qg?pwdy9qj 提取码:y9qj 戴尔原装WIN11系…...
![](https://www.ngui.cc/images/no-images.jpg)
.NET C# 装箱与拆箱
.NET C# 装箱与拆箱 目录 .NET C# 装箱与拆箱1 装箱 (Boxing)1.1 过程:1.2 示例: 2 拆箱 (Unboxing)2.1 过程:2.2 示例: 3 性能影响4 性能优化4.1 使用泛型集合示例: 4.2 使用Nullable<T>示例: 4.3 避…...
![](https://img-blog.csdnimg.cn/direct/d31a5f45202941a1a18e1321c43600ab.png)
springboot与flowable(9):候选人组
act_id_xxx相关表存储了所有用户和组的数据。 一、维护用户信息 Autowiredprivate IdentityService identityService;/*** 维护用户*/Testvoid createUser() {User user identityService.newUser("zhangsan");user.setEmail("zhangsanqq.com");user.setF…...
![](https://img-blog.csdnimg.cn/direct/65e1d11813a7439fa1880a9efbf74c91.png)
为什么要选择华为 HCIE-Security 课程?
2020 年我国网络安全市场规模达到 680 亿元,同比增长 25%。随着对网络安全的愈加重视及布局,市场规模将持续扩大。 近年来,随着“云大物工移智”等新兴技术的快速发展和普及应用,数字化已经融入社会经济生活的方方面面,…...
![](https://www.ngui.cc/images/no-images.jpg)
C++之std::queue::emplace
std::queue::emplace 是 C STL 中 std::queue 容器的成员函数,它用于在队列的末尾就地构造一个新元素。这个函数类似于 std::queue::push,但是 emplace 允许你通过传递参数来构造元素,而不需要显式地创建一个元素对象。 理解 std::queue::em…...
![](https://img-blog.csdnimg.cn/direct/e36fed8e476d476fb6ed1074a903c999.png)
Vue3 - 在项目中使用vue-i18n不生效的问题
检查和配置 Vue I18n 确保你已经正确安装了Vue I18n并且配置了组合API模式。 安装 Vue I18n npm install vue-i18nnext配置 i18n.js import { createI18n } from vue-i18n; import messages from ./messages;const i18n createI18n({legacy: false, // 使用组合 API 模式l…...
![](https://img-blog.csdnimg.cn/direct/618bc8ab1f4f4a63a0f98e5ae120c1cb.png#pic_center)
Day 44 Ansible自动化运维
Ansible自动化运维 几种常用运维工具比较 Puppet —基于 Ruby 开发,采用 C/S 架构,扩展性强,基于 SSL,远程命令执行相对较弱ruby SaltStack —基于 Python 开发,采用 C/S 架构,相对 puppet 更轻量级,配置语法使用 YAML,使得配置脚本更简单 Ansible —基于 …...
![](https://img-blog.csdnimg.cn/direct/9fcc5ffc654d44a3aa6c4ee2c32de798.png)
Excel/WPS《超级处理器》功能介绍与安装下载
超级处理器是基于Excel或WPS开发的一款插件,拥有近300个功能,非常简单高效的处理表格数据,安装即可使用。 点击此处:超i处理器安装下载 Excel菜单,显示如下图所示: WPS菜单显示,如下图所示&am…...
![](https://img-blog.csdnimg.cn/direct/502f78ad1af644b298575c923eacc717.png#pic_center)
U-Net for Image Segmentation
1.Unet for Image Segmentation 笔记来源:使用Pytorch搭建U-Net网络并基于DRIVE数据集训练(语义分割) 1.1 DoubleConv (Conv2dBatchNorm2dReLU) import torch import torch.nn as nn import torch.nn.functional as F# nn.Sequential 按照类定义的顺序去执行模型&…...
![](https://www.ngui.cc/images/no-images.jpg)
POI导入带有合并单元格的excel,demo实例,直接可以运行
直接可以运行 import org.apache.poi.hssf.usermodel.HSSFWorkbook; import org.apache.poi.ss.usermodel.Cell; import org.apache.poi.ss.usermodel.Row; import org.apache.poi.ss.usermodel.Sheet; import org.apache.poi.ss.usermodel.Workbook; import org.apache.poi.s…...
![](https://img-blog.csdnimg.cn/direct/59e6d77fff0c4801aab33af7427e55aa.png)
【C语言】解决C语言报错:Use-After-Free
文章目录 简介什么是Use-After-FreeUse-After-Free的常见原因如何检测和调试Use-After-Free解决Use-After-Free的最佳实践详细实例解析示例1:释放内存后未将指针置为NULL示例2:多次释放同一指针示例3:全局或静态指针被释放后继续使用示例4&am…...
![](https://www.ngui.cc/images/no-images.jpg)
C语言经典例题-19
1.字符串左旋结果 题目内容:写一个函数,判断一个字符串是否为另外一个字符串旋转之后的字符串。 例:给定s1 AABCD和s2 BCDAA,返回1 给定s1 abcd和s2 ACBD,返回0 AABCD左旋一个字符得到ABCDA AABCD左旋两个字符得到BCDAA AABCD右旋一…...
![](https://img-blog.csdnimg.cn/direct/1c650d074ea54e639eac9b3df3907286.png)
AlmaLinux 更换CN镜像地址
官方镜像列表 官方列表:https://mirrors.almalinux.org/CN 开头的站点,不同区域查询即可 一键更改镜像地址脚本 以下是更改从默认更改到阿里云地址 cat <<EOF>>/AlmaLinux_Update_repo.sh #!/bin/bash # -*- coding: utf-8 -*- # Author:…...
![](https://img-blog.csdnimg.cn/direct/29046c5b36cd4a86abfd49fe4eed0907.png)
【笔记】【矩阵的二分】668. 乘法表中第k小的数
力扣链接:题目 参考地址:参考 思路:二分查找 把矩阵想象成一维的已排好序的数组,用二分法找第k小的数字。 假设m行n列,则对应一维下标范围是从1到mn,初始: l1; rmn; mid(lr)/2 设mid在第i行&a…...
![](https://img-blog.csdnimg.cn/direct/381da1145bed48c8a61c743ce222e880.jpeg)
红米手机RedNot11无法使用谷歌框架,打开游戏闪退的问题,红米手机如何开启谷歌框架
红米手机RedNot11无法使用谷歌框架,打开游戏闪退的问题, 1.问题描述2.问题原因3.解决方案3.1配置谷歌框架:3.1软件优化 4.附图 1.问题描述 红米手机打开安卓APP没有广告,直接闪退,无法使用谷歌框架 异常关键词中包含&…...
![](https://img-blog.csdnimg.cn/direct/434573bd2b1f466783aa5638d7111732.png)
emqx5.6.1 数据、配置备份与迁移
EMQX 支持导入和导出的数据包括: EMQX 配置重写的内容: 认证与授权配置规则、连接器与 Sink/Source监听器、网关配置其他 EMQX 配置内置数据库 (Mnesia) 的数据 Dashboard 用户和 REST API 密钥客户端认证凭证(内置数据库密码认证、增强认证…...
![](https://img-blog.csdnimg.cn/direct/5339124779dc40b28843e23ebb58f20a.png)
VUE3脚手架工具cli配置搭建及创建VUE工程
1、VUE的脚手架工具(CLI) 开发大型vue的时候,不能通过html编写一个大型的项目,这个时候需要用到vue的脚手架工具 通过vue的脚手架,可以快速的生成vue工程 1.1、安装nodejs和npm 【下载nodejs】 https://nodejs.org/en 【安装…...
![](https://www.ngui.cc/images/no-images.jpg)
前端开发之DNS协议
上一篇👉: 前端开发之计算机网络模型认识 文章目录 DNS协议详介绍1. DNS 协议概述2. DNS协议与TCP/UDP3. DNS查询过程4. 迭代与递归查询5. DNS记录与报文结构资源记录类型对比 6. 总结 DNS协议详介绍 1. DNS 协议概述 DNS(Domain Name System…...
![](https://www.ngui.cc/images/no-images.jpg)
如何在 Tailwind CSS 中实现居中对齐
如何在 Tailwind CSS 中实现居中对齐: 1. 使用 text-center 类(针对行内元素或行内块元素) 这个类用于将文本或行内块元素水平居中对齐。 <div class"text-center"><span>这是一个行内元素</span> </div&g…...
![](https://img-blog.csdnimg.cn/direct/49e8fa0123cd4fa48f3f1ec2ac67149e.png)
【iOS】编译二进制文件说明
编译二进制文件说明 如何生成文件路径文件说明第一部分:.o文件第二部分:link第三部分:Segment第四部分:Symbol 如何生成 使用Xcode进行编译 ,会生成二进制相关文件,可以更详细看产物的布局 项目Target -&…...
![](https://www.ngui.cc/images/no-images.jpg)
红队内网攻防渗透:内网渗透之内网对抗:隧道技术篇防火墙组策略FRPNPSChiselSocks代理端口映射C2上线
红队内网攻防渗透 1. 内网隧道技术1.1 Frp内网穿透C2上线1.1.1 双网内网穿透C2上线1.1.1.1 服务端配置1.1.1.2 客户端配置1.1.2 内网穿透信息收集1.1.2.1、建立Socks节点(入站没限制采用)1.1.2.2 主动转发数据(出站没限制采用)1.2 Nps内网穿透工具1.2.1 NPS内网穿透C2上线1…...
![](https://img-blog.csdnimg.cn/direct/f16d044afe28408dbb64a621e9a6065b.png)
qt+halcon实战
注意建QT工程项目用的是MSVC,如果选成MinGW,则会报错 INCLUDEPATH $$PWD/include INCLUDEPATH $$PWD/include/halconcppLIBS $$PWD/lib/x64-win64/halconcpp.lib LIBS $$PWD/lib/x64-win64/halcon.lib#include "halconcpp/HalconCpp.h" #include &quo…...
![](https://www.ngui.cc/images/no-images.jpg)
Java_POJO
概念 POJO即简单的Java对象,区别于JavaBean JavaBean:特殊的Java类,容易被重用或插入到其他应用程序中去,通过封装属性和方法成为具有某种功能或者处理某个业务的对象 这个类必须有public的无参构造器所有属性都是private的所有属…...
![](https://img-blog.csdnimg.cn/direct/d77e031f754d4ca8b3e35eaa9b2609a6.png)
24年安克创新社招入职自适应能力cata测评真题分享北森测评高频题库
第一部分:安克创新自适应能力cata测评 感谢您关注安克创新社会招聘,期待与您一起弘扬中国智造之美。 为对您做出全面的评估,现诚邀您参加我们的在线测评。 测评名称:社招-安克创新自适应能力cata测评 第二部分:安克…...
![](https://img-blog.csdnimg.cn/img_convert/a4c05ef7e58c4b60ca8aaa1147a6693d.jpeg)
OpenCV中的圆形标靶检测——findCirclesGrid()(三)
前面说到cv::findCirclesGrid2()内部先使用SimpleBlobDetector进行圆斑检测,然后使用CirclesGridClusterFinder算法类执行基于层次聚类的标靶检测。如下图所示,由于噪声的影响,SimpleBlobDetector检出的标靶可能包含噪声。 而CirclesGridClusterFinder算法类会执行基…...
![](https://img-blog.csdnimg.cn/img_convert/df5f8b239648880b4ea48a915be83dbc.png)
天蝎网站建设/seo专员工作内容
点击“开发者技术前线”,选择“星标🔝”让一部分开发者看到未来来自:机器之心最近在 GitHub 上最火的项目是一个对视力友好的十六进制编辑器,它上线仅 5 天就收获了 2500 star,最近 24 小时涨了 1600 star 量。十六进制…...
![](https://images2018.cnblogs.com/blog/882871/201802/882871-20180219190533438-421921970.png)
wordpress 生成页面/黑龙江新闻
Python序列化和反序列化 啥是序列化?啥是反序列化?这两个词听起来优点高大上的意思,其实呢不然,很简单的可以理解为: 序列化:将python的数据对象编码转换为json格式的字符串反序列化:将json格式…...
![](/images/no-images.jpg)
四川专业网站建设/市场调研的基本流程
一、整型1、用途:一般用于定义整数,如:年龄,身份证号,qq号码等2、定义方式:age 18 ---->age int( 18 )3、内置常用方法 (用于数学计算与比较运算)3.1 进制的转换3.1.1其他进制转换10进制二-------&g…...
![](https://img-blog.csdnimg.cn/img_convert/01172129d3e4b762e56c826940dfafde.png)
南昌专业做网站公司哪家好/网站监测
两个排序的数组A和B分别含有m和n个数,找到两个排序数组的中位数,要求时间复杂度应为O(log (mn))。在线评测地址:https://www.lintcode.com/problem/median-of-two-sorted-arrays/?utm_sourcesc-zhihuzl-lm说明中位数的定义:这里的…...
![](https://img-blog.csdnimg.cn/img_convert/9f044e0800791df14a26a0b02429fe74.png)
wordpress的头像图标/nba最新交易一览表
今天为了继续玩python,给win10电脑安装MySQL数据库,正常安装后需要将数据库中my.ini配置文件修改一下,如下划红线部分:下面是图中内容部分:[mysql]# 设置mysql客户端默认字符集default-character-setutf8[mysqld]#设置…...
![](https://img-blog.csdnimg.cn/img_convert/96ffaaeabd5b64264f3884e4a994f77f.png)
基督教网站做父母怎样教养孩子/外贸建站推广哪家好
参考来源:https://blog.csdn.net/brycegao321/article/details/78038272在存储字符串时, 可以使用char、varchar或者text类型, 那么具体使用场景呢?参考下面这个表结构:1、 char长度固定, 即每条数据占用等…...