【单链表】06 给定两个单链表,编写算法找出两个链表的公共结点。

🕺作者: 主页

我的专栏
C语言从0到1
探秘C++
数据结构从0到1
探秘Linux
算法题上机准备

😘欢迎 ❤️关注 👍点赞 🙌收藏 ✍️留言

题目

给定两个单链表,编写算法找出两个链表的公共结点。

算法思路

  • 先将链表对齐,这样开始遍历后如果碰到节点相同就是公共节点

题解

int length(LinkedList L) {LNode* p = L;if (p == NULL) {return 0;}int ans = 0;while (p != NULL) {p = p->next;ans++;}return ans;
}
LNode* findCommon(LinkedList L1, LinkedList L2) {int len1 = length(L1);int len2 = length(L2);LNode* longhead = len1 > len2 ? L1 : L2;LNode* shorthead = longhead == L1 ? L2 : L1;int diff = len1 - len2 > 0 ? len1 - len2 : len2 - len1;while (diff > 0) {longhead = longhead->next;diff--;}while (longhead) {if (longhead == shorthead) {return longhead;}longhead = longhead->next;shorthead = shorthead->next;}return NULL;
}

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

24吉林事业单位报名照上传通过别忘了这一步

24吉林事业单位报名照上传通过别忘了这一步 #吉林事业单位 #吉林三支一扶 #吉林事业编 #事业单位报名照片 #吉林事业单位考试 #吉林市事业单位

泛微E9开发 控制Radio框字段打印是否仅显示选中项文字

控制Radio框字段打印是否仅显示选中项文字 1、需求说明2、实现方法3、扩展知识点控制Radio框字段打印是否仅显示选中项文字格式参数说明样例 1、需求说明 当我们对单选框进行打印时,往往会把所有的选项一起打印出来(如下图所示),现…

【AIGC】一、本地docker启动私有大模型

本地docker启动私有大模型 一、最终效果中英文对话生成代码 二、资源配置三、搭建步骤启动docker容器登录页面首次登录请注册登录后的效果 配置模型尝试使用选择模型选项下载模型选择适合的模型开始下载 试用效果返回首页选择模型中英文对话生成代码 四、附录资源监控 五、参考…

mysql 一主多从环境搭建

前期准备 三台服务器,服务器使用的是 centos7 mysql-5.7.24-linux-glibc2.12-x86_64 安装包 使用是版本是 mysql-5.7.24 数据库安装 将 mysql 安装包上传到三台服务器上,我使用 FlashFXP 作为上传工具 解压安装包 tar -zxvf mysql-5.7.24-linux-glibc…

Redis过期策略

过期的key集合 Redis会将每个设置了过期时间的key放入到一个独立的字典中,以后会定时遍历这个字典来删除到期的key。除了定时遍历之外,他还会使用惰性策略来删除过期的key,所谓惰性策略就是在客户端访问这个key的时候,redis对key…

[C++] 由C语言过渡到C++的敲门砖

命名空间 在C/C中,变量、函数和后⾯要学到的类都是⼤量存在的,这些变量、函数和类的名称将都存在于全局作⽤域中,可能会导致很多冲突。使⽤命名空间的⽬的是对标识符的名称进⾏本地化,以避免命名冲突或名字污染 。 在同一个工程中…

Python基础-成年人判断(if条件语句联系)

注意输入的年龄需要转化为字符串 代码: print("欢迎来到游乐场:儿童免费,成人收费") age int(input("请输入你的年龄:")) if age>18:print("你已经成年,需要补票10元") # 四个空格缩进print…

使用ssh服务器管理远程主机

前言:本博客仅作记录学习使用,部分图片出自网络,如有侵犯您的权益,请联系删除 目录 一、配置网卡服务 1、配置网卡参数 2、创建网络会话 3、绑定两块网卡 二、远程控制服务 1、配置sshd服务 2、在Windows连接 3、安全密钥…

代码随想录算法训练营第12天|150. 逆波兰表达式求值、239. 滑动窗口最大值、347. 前 K 个高频元素

在补在补了 打卡Day12 1.150. 逆波兰表达式求值2.239. 滑动窗口最大值3.347. 前 K 个高频元素总结 1.150. 逆波兰表达式求值 题目链接:逆波兰表达式求值 文档讲解: 代码随想录 class Solution(object):def evalRPN(self, tokens):""":t…

数据仓库哈哈

数据仓库 基本概念数据库(database)和数据仓库(Data Warehouse)的异同 整体架构分层架构方法论ER模型(建模理论)维度模型 何为分层第一层:数据源(ODS ER模型)设计要点日志…

华为机考真题 -- 小明找位置

题目描述: 小朋友出操,按学号从小到大排成一列;小明来迟了,请你给小明出个主意,让他尽快找到他应该排的位置。算法复杂度要求不高于nLog(n);学号为整数类型,队列规模<=10000; 输入描述: 1、第一行:输入已排成队列的小朋友的学号(正整数),以”,”隔开;例如:…

Studying-代码随想录训练营day34| 62.不同路径、63.不同路径II、343.整数拆分、96.不同的二叉搜索树

第34天&#xff0c;动态规划part02&#xff0c;牢记五部曲步骤&#xff0c;编程语言&#xff1a;C 目录 62.不同路径 63.不同路径II 343.整数拆分 96.不同的二叉搜索树 总结 62.不同路径 文档讲解&#xff1a;代码随想录不同路径 视频讲解&#xff1a;手撕不同路径 题目…

CPU/内存/综合性能评估工具汇总-2:stream

目录 一、概括二、stream 一、概括 嵌入式开发中对要设计的产品、立项的项目进行设计时&#xff0c;往往需要对关键芯片进行性能评估&#xff0c;本文主要总结基于linux系统的产品在性能评估时的工具使用总结&#xff0c;在aarch64(arm64平台下测试)&#xff0c;板卡根文件系统…

源码编译构建LAMP(企业网站架构部署与优化)

部署LAMP平台 LAMV架构是目前成熟的企业网站应用模式之一&#xff0c;指的是协同工作的一整套系统和相关软件&#xff0c;能够提供动态Web站点服务及其应用开发环境。LAMP是一个缩写词&#xff0c;具体包 括 Linux操作系统&#xff0c;Apache网站服务器、MySQL数据库服务器、P…

【Python】基础语法体系:两种常用语句

个人主页&#xff1a;【&#x1f60a;个人主页】 系列专栏&#xff1a;【❤️Python】 文章目录 前言条件语句动态实例if语句if-else 语句if-elif-else 语句嵌套条件语句 循环语句for循环while循环 动态实例嵌套循环 前言 Python语句是构成Python程序的基本单元&#xff0c;用…

优化VOI(Virtual Operating System Infrastructure,虚拟操作系统基础架构)架构的性能

优化VOI&#xff08;Virtual Operating System Infrastructure&#xff0c;虚拟操作系统基础架构&#xff09;架构的性能&#xff0c;可以从多个方面入手&#xff0c;以确保系统能够更高效、更稳定地运行。以下是一些优化建议&#xff1a; 1. 优化硬件资源利用 本地硬件资源最…

JavaScript 基础:掌握JavaScript基础语法(一)

一、JavaScript 字面量 在编程语言中&#xff0c;一般固定值称为字面量&#xff0c;如 3.14。 1&#xff09;数字&#xff08;Number&#xff09;字面量 可以是整数或者是小数&#xff0c;或者是科学计数(e)。 3.14 1001 123e5 2&#xff09;字符串&#xff08;String&…

磁力猫官网cilimao,获取磁力链接的操作步骤

磁力猫磁力链接是一种特殊的下载链接&#xff0c;磁力猫磁力链接可以理解为一个文件识别码&#xff0c;而并非具体的资源地址&#xff0c;下载软件需要拿着这个识别码去整个互联网(DHT网络)去寻找持有该资源的用户(节点)&#xff0c;如果找到则可以进行传输下载。一般年代越久远…

Innodisk宣布启用第二期研发与生产中心,发力扩展边缘AI解决方案产能

Innodisk 公司于2024年7月9日在台湾宜兰揭幕了其研发与生产中心第二阶段&#xff0c;旨在扩大边缘人工智能&#xff08;Edge AI&#xff09;解决方案的生产能力。此举是对边缘AI浪潮所带动的庞大市场需求的直接响应&#xff0c;标志着公司将制造工厂转变为集团AI核心基地的重要…

C++之goto陈述

关键字 goto用于控制程式执行的顺序&#xff0c;使程式直接跳到指定标签(lable) 的地方继续执行。 形式如下 标签可以是任意的识别字&#xff0c;后面接一个冒号。 举例如下 #include <iostream>int main() {goto label_one;label_one: {std::cout << "Lab…