关于算法:2133检查是否每一行每一列都包含全部整数-算法leetode附思维导图-全部解法300题

38次阅读

共计 1607 个字符,预计需要花费 5 分钟才能阅读完成。

零 题目:算法(leetode,附思维导图 + 全副解法)300 题之(2133)查看是否每一行每一列都蕴含全副整数

一 题目形容


二 解法总览(思维导图)

三 全副解法

1 计划 1

1)代码:

// 计划 1“哈希法(JS 里的 Map 数据结构)”// 技巧:“波及数量、唯一性的,优先思考 哈希(JS 里的 Map 数据结构)”。// 思路:// 1)状态初始化:map = new Map()。// 2)外围 1:遍历所有 行,看其是否“蕴含从 1 到 n 的全副整数”。// 2.1)每次遍历,均先 清空 map。// 2.2)遍历以后行的每一个元素。// 2.2.1)若 以后元素 已存在于 map,则 阐明存在反复了、间接返回 false。// 2.2.2)若 以后元素 不存在于 map,则 将该元素放入 map 中。// 3)外围 2:遍历所有 列,看其是否“蕴含从 1 到 n 的全副整数”。// 3.1)每次遍历,均先 清空 map。// 3.2)遍历当前列的每一个元素。// 3.2.1)若 以后元素 已存在于 map,则 阐明存在反复了、间接返回 false。// 3.2.2)若 以后元素 不存在于 map,则 将该元素放入 map 中。// 4)行、列均满足条件,返回 true。var checkValid = function(matrix) {// 1)状态初始化:map = new Map()。const l = matrix.length;
    let map = new Map();

    // 2)外围 1:遍历所有 行,看其是否“蕴含从 1 到 n 的全副整数”。for (let i = 0; i < l; i++) {
        // 2.1)每次遍历,均先 清空 map。map.clear();
        // 2.2)遍历以后行的每一个元素。for (let j = 0; j < l; j++) {const tempVal = matrix[i][j];
            // 2.2.1)若 以后元素 已存在于 map,则 阐明存在反复了、间接返回 false。if (map.has(tempVal)) {return false;}
            // 2.2.2)若 以后元素 不存在于 map,则 将该元素放入 map 中。else {map.set(tempVal, 1);
            }
        }
    }

    // 3)外围 2:遍历所有 列,看其是否“蕴含从 1 到 n 的全副整数”。for (let i = 0; i < l; i++) {
        // 3.1)每次遍历,均先 清空 map。map.clear();
        // 3.2)遍历当前列的每一个元素。for (let j = 0; j < l; j++) {const tempVal = matrix[j][i];
            // 3.2.1)若 以后元素 已存在于 map,则 阐明存在反复了、间接返回 false。if (map.has(tempVal)) {return false;}
            // 3.2.2)若 以后元素 不存在于 map,则 将该元素放入 map 中。else {map.set(tempVal, 1);
            }
        }
    }

    // 4)行、列均满足条件,返回 true。return true;
};

四 资源分享 & 更多

1 历史文章 – 总览

2【资源分享】算法通关 + 面试宝典算法通关 + 面试宝典

1)算法通关 40 讲(极客 - 外企大佬讲的):链接: https://pan.baidu.com/s/1C175QEmcAunjnCzYzoLBz 提取码: hjna

2)动静布局专题(价值几百美刀~):https://www.bilibili.com/video/BV1nt4y1Y7nz

3)前端面经:3.1)https://www.nowcoder.com/tutorial/96
3.2)https://muyiy.cn/question
3.3)https://hub.fastgit.org/haizlin/fe-interview/blob/master/category/history.md

注:若生效请返回 VX 公众号:码农三少,发送关键字:LeetCode 或 算法,即可获取最新的链接~

3 博主简介

码农三少,一个致力于编写 极简、但齐全题解(算法 )的博主。
专一于 一题多解、结构化思维,欢送一起刷穿 LeetCode ~

正文完
 0