每日一题——LeetCode1496.判断路径是否相交

方法一 Set集合

用x=0,y=0来模拟点的坐标移动,N就是y+1,S就是y-1,E就是x+1,W就是x-1,没有重复出现的坐标就代表没有相交

javascript 复制代码
var isPathCrossing = function(path) {
    let set = new Set()
    let x=0,y=0
    set.add(x+','+y)
    for(let char of path){
        switch(char){
            case "N":y++;break;
            case "S":y--;break;   
            case "W":x--;break;   
            case "E":x++;break;
        }
        if(set.has(x+','+y)) return true
        else set.add(x+','+y)
    }
    return false
};

消耗时间和内存情况:

相关推荐
To_OC8 小时前
LC 994 腐烂的橘子:人人都说是 BFS 入门题,我却写了三遍才过
javascript·算法·leetcode
金銀銅鐵12 小时前
[Python] 扩展欧几里得算法
python·数学·算法
To_OC14 小时前
LC 200 岛屿数量:经典 DFS 入门题,我第一次写居然连方向都搞错了
javascript·算法·leetcode
labixiong16 小时前
实现一个能跑的迷你版Promise(一)
前端·javascript·面试
weedsfly21 小时前
还在用 Axios?你可能需要重新理解 XHR 与 Fetch
前端·javascript·面试
CoderWeen21 小时前
从零实现一个 Vue3 流程图编辑器:节点拖拽、贝塞尔连线与框选
前端·javascript
To_OC1 天前
LC 128 最长连续序列:别上来就排序,O (n) 解法才是这题的灵魂
javascript·算法·leetcode
kyriewen1 天前
我用 50 行代码重写了 React Router 核心,终于搞懂了前端路由原理
前端·javascript·react.js
Asize2 天前
HTML5 Canvas 基础:从按帧动画到 ECharts 数据可视化
前端·javascript·canvas
默_笙2 天前
🎄 后端给我一堆扁平数据,我 10 行代码把它变成了树
前端·javascript