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

leetcode160.相交链表

 基本思路是让两个链表从“同一个起点”出发,当两点相遇时就是相交结点

m统计A的长度,n统计B的长度,让长的一方先移动m-n个结点保证两者从同一起点出发,接下来就二者同时右移找到相交结点就行

/**
 * Definition for singly-linked list.
 * public class ListNode {
 *     int val;
 *     ListNode next;
 *     ListNode(int x) {
 *         val = x;
 *         next = null;
 *     }
 * }
 */
public class Solution {
    public ListNode getIntersectionNode(ListNode headA, ListNode headB) {
        int m=0,n=0;
        ListNode tempA=headA;
        ListNode tempB=headB;
        while (tempA != null) {
            m++;
            tempA=tempA.next;
        }
        while (tempB != null) {
            n++;
            tempB=tempB.next;
        }
        
        tempA=headA;
        tempB=headB;
        if(m>=n)
            while(m--!=n)
                tempA=tempA.next;
        else
            while (m++!=n)
                tempB=tempB.next;

        while (tempA != null && tempB != null) {
            if (tempA == tempB) {
                return tempA;
            }
            tempA=tempA.next;
            tempB=tempB.next;
        }
        return null;
    }
}

 

相关文章:

  • Three.js 实现四元数(Quaternion)与常用运算
  • 树莓派使用USB摄像头与TFLite实现目标检测的完整指南
  • 开源模型应用落地-glm模型小试-glm-4-9b-chat-vLLM集成(四)
  • 基于 Trae 的超轻量级前端架构设计与性能优化实践
  • 基于Flask的跨境电商头程预警分析系统
  • XRP杠杆风暴来袭:XBIT引领潮流,解析DEX抗风险体系
  • ShardingSphere
  • QT第六课------QT界面优化------QSS
  • Python-数据处理
  • 深度剖析Spring Cloud Eureka:微服务注册与发现的终极指南 [特殊字符]
  • (C++11/C++14新特性)C++中的Lambda表达式——捕获方式和参数?值捕获和引用捕获?泛型Lambda和普通Lambda?
  • 一文解读DeepSeek大模型在政府工作中具体的场景应用
  • C++初阶知识复习 (31~45)
  • jQuery 入门案例教程
  • Ubuntu系统Docker安装失败
  • VUE如何前端控制及动态路由详细讲解
  • 日程公布| 第八届地球空间大数据与云计算前沿大会与集中学习(3号通知)
  • idea自动生成注释
  • 传奇类网游页游2.5D游戏场景地图素材Eagle库 沙漠沙海隔壁
  • Visual Studio | 性能探测器
  • 公司的网站建设公司/关键词优化排名费用
  • 泉州软件开发公司/图片seo优化是什么意思
  • wordpress搜图插件/优化设计
  • 温州百度网站快速优化/seo网站排名的软件
  • 校园网站做自己的广告/网络运营推广是做什么的
  • wordpress贴吧吧/手机网站排名优化软件