LCR171.训练计划V
链接:LCR171.训练计划V
难度:Easy
标签:哈希表、链表、双指针
简介:输入两个链表,找出它们的第一个公共节点。
题解 1 - typescript
- 编辑时间:2021-07-21
- 执行用时:112ms
- 内存消耗:45.5MB
- 编程语言:typescript
- 解法介绍:利用 set 储存每个节点。
var getIntersectionNode = function (headA, headB) {
const set = new Set();
let p = headA;
while (p) {
set.add(p);
p = p.next;
}
p = headB;
while (p) {
if (set.has(p)) return p;
p = p.next;
}
return null;
};
题解 2 - typescript
- 编辑时间:2021-07-21
- 执行用时:88ms
- 内存消耗:45.1MB
- 编程语言:typescript
- 解法介绍:双指针。
var getIntersectionNode = function (headA, headB) {
let pA = headA;
let pB = headB;
if (!pA || !pB) return null;
while (pA !== pB) {
pA = pA === null ? headB : pA.next;
pB = pB === null ? headA : pB.next;
}
return pA;
};