欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 新闻 > 国际 > leetcode hot100刷题日记——11.相交链表

leetcode hot100刷题日记——11.相交链表

2025/5/25 10:20:46 来源:https://blog.csdn.net/weixin_54248223/article/details/148169200  浏览:    关键词:leetcode hot100刷题日记——11.相交链表

在这里插入图片描述
在这里插入图片描述
解答:

class Solution {
public:ListNode *getIntersectionNode(ListNode *headA, ListNode *headB) {//方法一:先遍历一条链表,存节点;再遍历另一条链表,找对应的节点有没有存过// unordered_set<ListNode*>vis;// ListNode *temp=headA;// while(temp!=nullptr){//     vis.insert(temp);//     temp=temp->next;// }// temp=headB;// while(temp!=nullptr){//     if(vis.count(temp)!=0){//         return temp;//     }//     temp=temp->next;// }// return nullptr;//方法二:双指针if(headA==nullptr || headB==nullptr){return nullptr;}ListNode *pA=headA,*pB=headB;while(pA!=pB){pA=pA==nullptr?headB:pA->next;pB=pB==nullptr?headA:pB->next;}return pB;}
};

方法一:
时间复杂度O(M+N)
空间复杂度O(N)

方法二:
时间复杂度O(M+N)
空间复杂度O(1)

方法二思想详见官方题解link

直白理解:两个链表左端对齐,后面的分别用对方的给补上,如果两个一样长,那就不用找到后面补上的部分;如果不一样长,分别经过对方的补上之后相同的部分就能拉齐了

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词