Graph
野生程序猿RW
2020年毕业于台湾科技大学(Taiwan Tech),后端开发工程师一枚。
展开
-
997. 找到小镇的法官(入度和出度)
997. 找到小镇的法官 本题需要用到有向图中节点的入度和出度的概念。在有向图中,一个节点的入度是指向该节点的边的数量;而一个节点的出度是从该节点出发的边的数量。 在一个小镇里,按从 1 到 n 为 n 个人进行编号。传言称,这些人中有一个是小镇上的秘密法官。 如果小镇的法官真的存在,那么: 小镇的法官不相信任何人。 每个人(除了小镇法官外)都信任小镇的法官。 只有一个人同时满足条件 1 和条件 2 。 给定数组 trust,该数组由信任对 trust[i] = [a, b]组成,表示编号为 a 的人信任编原创 2021-12-19 20:02:35 · 71 阅读 · 0 评论 -
419. 甲板上的战舰
419. 甲板上的战舰 给你一个大小为m x n的矩阵 board 表示甲板,其中,每个单元格可以是一艘战舰 ‘X’ 或者是一个空位'.',返回在甲板 board 上放置的 战舰 的数量。 战舰 只能水平或者垂直放置在 board 上。换句话说,战舰只能按1 x k(1 行,k 列)或 k x 1(k 行,1 列)的形状建造,其中 k 可以是任意大小。两艘战舰之间至少有一个水平或垂直的空位分隔 (即没有相邻的战舰)。 输入:board = [["X",".",".","X"],[".",".",".","原创 2021-12-18 15:11:02 · 189 阅读 · 0 评论 -
240. 搜索二维矩阵 II
240. 搜索二维矩阵 II 编写一个高效的算法来搜索 m x n 矩阵matrix中的一个目标值target。该矩阵具有以下特性: 每行的元素从左到右升序排列。 每列的元素从上到下升序排列。 输入:matrix = [[1,4,7,11,15],[2,5,8,12,19],[3,6,9,16,22],[10,13,14,17,24],[18,21,23,26,30]], target = 5 输出:true class Solution { public boolean searchMatrix原创 2021-10-26 00:50:25 · 45 阅读 · 0 评论 -
841. 钥匙和房间
841. 钥匙和房间 有N个房间,开始时你位于 0号房间。每个房间有不同的号码:0,1,2,...,N-1,并且房间里可能有一些钥匙能使你进入下一个房间。 在形式上,对于每个房间 i 都有一个钥匙列表rooms[i],每个钥匙 rooms[i][j]由 [0,1,...,N-1]中的一个整数表示,其中 N = rooms.length。 钥匙 rooms[i][j] = v 可以打开编号为v的房间。 最初,除0 号房间外的其余所有房间都被锁住。 你可以自由地在房间之间来回走动。 如果能进入每个房间返回tru原创 2020-08-31 22:26:51 · 152 阅读 · 0 评论 -
图的BFS模板请看这里!!![力扣]1162.地图分析、542. 01矩阵
1162. 地图分析 你现在手里有一份大小为 N x N 的「地图」(网格) grid,上面的每个「区域」(单元格)都用 0 和 1 标记好了。其中 0 代表海洋,1 代表陆地,请你找出一个海洋区域,这个海洋区域到离它最近的陆地区域的距离是最大的。 我们这里说的距离是「曼哈顿距离」( Manhattan Distance):(x0, y0) 和 (x1, y1) 这两个区域之间的距离是&n原创 2020-06-27 14:49:12 · 251 阅读 · 0 评论 -
130. 被围绕的区域
给定一个二维的矩阵,包含 ‘X’ 和 ‘O’(字母 O)。 找到所有被 ‘X’ 围绕的区域,并将这些区域里所有的 ‘O’ 用 ‘X’ 填充。 示例: X X X X X O O X X X O X X O X X 运行你的函数后,矩阵变为: X X X X X X X X X X X X X O X X 解释: 被围绕的区间不会存在于边界上,换句话说,任何边界上的 ‘O’ 都不会被填充为 ‘X’。 任何不在边界上,或不与边界上的 ‘O’ 相连的 ‘O’ 最终都会被填充为 ‘X’。如果两个元素在水平或垂直原创 2020-08-11 10:33:40 · 292 阅读 · 0 评论 -
657. 机器人能否返回原点
657. 机器人能否返回原点 在二维平面上,有一个机器人从原点 (0, 0) 开始。给出它的移动顺序,判断这个机器人在完成移动后是否在 (0, 0) 处结束。 移动顺序由字符串表示。字符 move[i] 表示其第 i 次移动。机器人的有效动作有 R(右),L(左),U(上)和 D(下)。如果机器人在完成所有动作后返回原点,则返回 true。否则,返回 false。 注意:机器人“面朝”的方向无关紧要。 “R” 将始终使机器人向右移动一次,“L” 将始终向左移动等。此外,假设每次移动机器人的移动幅度相同。 示原创 2020-08-28 12:42:25 · 145 阅读 · 0 评论