Update 52. 两个链表的第一个公共结点.md

补充双指针遍历节点数的说明,并补充两链表不相交时的循环结束条件与返回值说明。
This commit is contained in:
CyC2018
2026-10-30 20:18:05 +08:00
parent 78ed97e13c
commit 7c1e27b311
@@ -10,7 +10,7 @@
设 A 的长度为 a + c,B 的长度为 b + c,其中 c 为尾部公共部分长度,可知 a + c + b = b + c + a。
当访问链表 A 的指针访问到链表尾部时,令它从链表 B 的头部重新开始访问链表 B;同样地,当访问链表 B 的指针访问到链表尾部时,令它从链表 A 的头部重新开始访问链表 A。这样就能控制访问 A 和 B 两个链表的指针能同时访问到交点。
当访问链表 A 的指针访问到链表尾部时,令它从链表 B 的头部重新开始访问链表 B;同样地,当访问链表 B 的指针访问到链表尾部时,令它从链表 A 的头部重新开始访问链表 A。这样两个指针都经过 a + c + b 个节点后同时到达交点。如果两个链表不相交,两个指针各自走完两个链表后同时变为 null,循环结束,返回 null。
```java
public ListNode getIntersectionNode(ListNode headA, ListNode headB) {