当前位置: 首页 > news >正文

【Leetcode】【数据结构】【C语言】判断两个链表是否相交并返回交点地址

在这里插入图片描述

struct ListNode *getIntersectionNode(struct ListNode *headA, struct ListNode *headB) {struct ListNode *tailA=headA;struct ListNode *tailB=headB;int count1=0;int count2=0;//分别找尾节点,并顺便统计节点数量:while(tailA){tailA=tailA->next;count1++;}while(tailB){tailB=tailB->next;count2++;}if(tailA!=tailB)//如果尾节点不相同,则一定不相交return NULL;int tmp=abs(count1-count2);//得到两个数量差值的绝对值struct ListNode*longList=headA;struct ListNode*shortList=headB;//找出长的链表:if(count2>count1){longList=headB;shortList=headA;}//先让长的链表走差值步,再和短链表齐头并进while(tmp){longList=longList->next;tmp--;}//两个链表齐头并进:while(longList!=shortList){shortList=shortList->next;longList=longList->next;}//两个链表相遇的地方就是节点return longList;
}
http://www.lryc.cn/news/222817.html

相关文章:

  • Selenium爬取内容并存储至MySQL数据库
  • 蓝桥等考C++组别六级 007
  • 集合框架:Set集合的特点、HashSet集合的底层原理、哈希表、实现去重复
  • 【T690 之十二】基于方寸EVB2开发板(T690芯片)构建基于GMSSL的文件系统的方式
  • 使用Selenium发邮件附件
  • 公共数据这座金矿,授权运营为何是赋能的关键路径?
  • 昇腾CANN 7.0 黑科技:大模型推理部署技术解密
  • OAuth 2.0
  • 7个设计师必备的Figma汉化插件,高效设计超简单!
  • 缓存-基础理论和Guava Cache介绍
  • 机器人伺服驱动控制环
  • 单链表(3)
  • Android14前台服务适配指南
  • Spring Boot中使用Spring Data JPA访问MySQL
  • Go 语言函数闭包(匿名函数)
  • 2023年11月编程语言流行度排名
  • apache-maven-3.6.3 安装配置教程
  • 你一般什么时候使用GPT
  • kubernetes (k8s)的使用
  • RK3568平台开发系列讲解(音视频篇)RTMP 推流
  • 掌握这几个技巧,才敢称为Jenkins大神!
  • 帷幄内容管理系统:从立人设、做内容到定向投流,品牌 KOS 体系打造「百万导购」
  • 5.vue3项目(五):实现顶部导航栏功能:导航栏静态搭建,菜单折叠功能实现,面包屑动态展示路径,刷新页面功能,全屏功能
  • unittest 统计测试执行case总数,成功数量,失败数量,输出至文件,生成一个简易的html报告带饼图
  • 推荐一款功能强大的在线文件预览工具-kkFileView
  • 【Linux】磁盘阵列,了解不同raid的特点
  • Go 语言初探:从基础到实战
  • Kotlin文件和类为什么不是一对一关系
  • Kubernetes实战(四)-部署docker harbor私有仓库
  • IDEA JAVA项目 导入JAR包,打JAR包 和 JAVA运行JAR命令提示没有主清单属性