算法面试题

链表:

两个链表,在某个节点相遇,给定两个头节点,在空间复杂度O(1)的条件下找到相遇节点

思路:

初始化cur1=head1,cur2=head2,然后执行下面的循环,循环退出的时候cur1=cur2,此时为答案

1
2
3
4
5
6
7
8
9
10
11
12
while(cur1!=cur2){

if(cur1->next!=nullptr)
cur1=cur1->next;
else cur1=head2;

if(cur2->next!=nullptr)
cur2=cur2->next;
else cur2=head1;
}
ans=cur1;
//第一次相遇的时候为答案

算法面试题
http://example.com/2024/02/28/面试题/算法题/
作者
Mrxiad
发布于
2024年2月28日
许可协议