Leetcode 160.相交链表 JavaScript (Day 9)

js一刷 哈希表

javascript 复制代码
var getIntersectionNode = function(headA, headB) {
    const idx=new Map();
    let p1=headA;
    while(p1){
        idx.set(p1,1);
        p1=p1.next;
    }
    let p2=headB;
    while(p2){
        if(idx.has(p2)) return p2;
        p2=p2.next;
    }
};

js 一刷 双指针

javascript 复制代码
var getIntersectionNode = function(headA, headB) {
   	let p1=headA;
    let p2=headB;
    while(p1!=p2){
        p1=p1?p1.next:headB;
        p2=p2?p2.next:headA;
    }
    return p1;
};

第二种方法算法核心:遍历完第一个链表后遍历第二个链表,两个指针一定会同时到达相交点,如果没有相交点,一定会同时到达空结点

相关推荐
樱花落木兰9 分钟前
分布式登录实战:Session 会话共享改造,Redis 存储用户登录状态
java·javascript·数据库·redis·分布式·缓存
liangshanbo121538 分钟前
面试题:线上 JavaScript 报错如何快速定位到源码?
开发语言·javascript·ecmascript
专业程序开发源2 小时前
django新闻推荐系统70655-计算机课程设计、毕业设计
java·javascript·spring boot·后端·python·django·课程设计
acd120093 小时前
前端随笔:数据明明变了,Vue 页面就是不更新
前端·javascript·vue.js
50万马克的面包4 小时前
顺序表和链表_精华知识点_CSDN博客
数据结构·链表
All for pursuit.4 小时前
【回溯-7】494.目标和
数据结构·c++·算法·leetcode
传人4 小时前
悬停旋转放大和位移效果如何写
前端·javascript·css
羲云4 小时前
给 Vue 页面加个 Markdown 编辑器:ME.js 的接入、图片粘贴与音视频
javascript·vue.js
Highcharts.js5 小时前
可视化商用图表库对比,如何选择?
前端·javascript·学习·信息可视化·highcharts·前端可视化
Tisfy5 小时前
LeetCode 0678.有效的括号字符串:O(n)+O(1)一次遍历
算法·leetcode·字符串·题解·贪心·括号匹配