当前位置:网站首页>两个链表的第一个公共节点——LeetCode
两个链表的第一个公共节点——LeetCode
2022-08-10 23:55:00 【牛牛最爱喝兽奶】
力扣第 52题 两个链表的第一个公共节点
力扣题目描述
示例
读懂题意
这一道力扣题属于简单类型,读起题目也是很容易的,题目给的意思是开头是两个链表,结尾可能两链表会相遇,就是能找到两链表的公共部位,题目的要求就是我们必须找到公共结点的位置,并且返回。由示例一可以看出,值相等并非一定是公共结点。但是公共结点的值一定是相等的,所以我们只能从结点出发,判断链链表指向是否为同一结点。如果在链尾之前能找到公共结点,就返回公共结点,如果没有找到就返回为null。
解题思路
首先最简单最容易理解的一个思路,双层while循环,判断A链表当前结点与链表B结点是否相等,不相等A就往下一个结点移动,B接着判断,一直移到最后一个节点。因为两链表的长度不一定相等,所以移动的距离也不同,采用双层循环来处理!
解题代码
/** * Definition for singly-linked list. * public class ListNode { * int val; * ListNode next; * ListNode(int x) { * val = x; * next = null; * } * } */
public class Solution {
public ListNode getIntersectionNode(ListNode headA, ListNode headB) {
ListNode a = headA;//获取A链表
ListNode b = headB;//获取B链表
while(a!=null){
//如果A链表还没有走到最后一个结点
b = headB;//每次从B链表的开头开始去遍历
while(b!=null){
//如果B还没有走到最后
if(b==a){
//如果找到则返回
return b;
}
b=b.next; //下一个B结点
}
a = a.next;//下一个A节点
}
return null;
}
}
边栏推荐
- 有哪些可以投稿软件工程/系统软件/程序设计语言类外文期刊、会议?
- [C language] Detailed explanation of data storage
- 14. Thymeleaf
- 图片懒加载(纯手写)
- Cache knowledge summary
- 多语种翻译-多语种翻译软件免费
- [Data Visualization] Chart Design Principles
- LENS CRA和SENSOR CRA匹配问题解析
- Is there a way out in the testing industry if it is purely business testing?
- Easy-to-use translation plug-in - one-click automatic translation plug-in software
猜你喜欢
随机推荐
7. yaml
宝塔实测-搭建PHP在线模拟考试系统
百战RHCE(第四十八战:运维工程师必会技-Ansible学习3-构建Ansible清单)
Is there a way out in the testing industry if it is purely business testing?
地下管廊可视化管理系统搭建
10. Notes on receiving parameters
【redis】发布和订阅消息
Where can I download IEEE papers?
14. Thymeleaf
如何快速把握行业机会,更高效地推陈出新,是一个重要的命题
SQL注入基础---order by \ limit \ 宽字节注入
三栏布局实现
NOR FLASH闪存芯片ID应用之软件保护场景
报错:Client does not support authentication protocol requested by server; consider upgrading MySQL cli
13. Content Negotiation
Software Testing Certificate (1) - Software Evaluator
SQL injection base
“蔚来杯“2022牛客暑期多校训练营3 DF题解
如何做专利挖掘,关键是寻找专利点,其实并不太难
[21天学习挑战赛——内核笔记](五)——devmem读写寄存器调试