当前位置: 首页 > news >正文

[LeetCode力扣hot100]-链表

相交链表

160. 相交链表 - 力扣(LeetCode)

思路就是遍历两个链表,有相同的部分就可以视为相交。

但是长度不一样,比如两个会相交的链表,headA 的长度为 a + cheadB 的长度为 b + c,其中 c 是公共部分的长度。

指针pA遍历完后从headA跳转到headB,pB遍历完headB跳成A。

这样的话最后遍历a+b+c,肯定会最后同时到达相交节点的。

同理不相交的话会遍历a+b,最后会pA=pB=NULL,最后返回空

/**
 * Definition for singly-linked list.
 * struct ListNode {
 *     int val;
 *     ListNode *next;
 *     ListNode(int x) : val(x), next(NULL) {}
 * };
 */
class Solution {
public:
    ListNode *getIntersectionNode(ListNode *headA, ListNode *headB) {
        if(headA==NULL||headB==NULL){
            return NULL;
        }

        ListNode *a=headA;
        ListNode *b=headB;//定义指针

        while(a!=b){
            if(a==NULL){
                a=headB;
            }else{
                a=a->next;
            }

            if(b==NULL){
                b=headA;
            }else{
                b=b->next;
            }

        }
        return a;
    }
};

相关文章:

  • 【Python pro】组合数据类型
  • 基于YOLO11深度学习的心脏超声图像间隔壁检测分割与分析系统【python源码+Pyqt5界面+数据集+训练代码】深度学习实战、目标分割、人工智能
  • Leetcode1299:将每个元素替换为右侧最大元素
  • 【DL】浅谈深度学习中的知识蒸馏 | 2019 CVPR | 中间层知识蒸馏
  • MQ导致的系统登录没反应
  • 根据POD名称生成 三部曲:get、describe、log、exec
  • DeepSeek部署到本地(解决ollama模型下载失败问题)
  • JAVA系列之数组的秘密(数组的一般用法+力扣 斯坦福大学练习精解)
  • 同花顺Java开发面试题及参考答案 (上)
  • 2025-2-18-4.7 二叉树(基础题)
  • C/C++ | 面试题每日一练 (1)
  • 【HBase】HBaseJMX 接口监控信息实现钉钉告警
  • 训练营3,
  • 第二章:16.3 构建决策树的过程
  • 统信服务器操作系统V20 1070A 安装docker新版本26.1.4
  • Unity项目实战-订阅者发布者模式
  • Day4:强化学习之Qlearning走迷宫
  • ELF,链接,加载
  • oracle取金额的绝对值
  • c# -新属性-模式匹配、弃元、析构元组和其他类型
  • 王毅谈中拉命运共同体建设“五大工程”及落实举措
  • 美国4月CPI同比上涨2.3%低于预期,为2021年2月来最小涨幅
  • 上海杨浦:鼓励龙头企业与高校共建创新联合体,最高支持200万元
  • 沙县小吃中东首店在沙特首都利雅得开业,首天营业额超5万元
  • 北京“准80后”干部兰天跨省份调任新疆生态环境厅副厅长
  • 韩国总统大选候选人登记结束,共7人参选