关注Java领域相关技术 记录有趣的事情

数据结构与算法

Data structures and Algorithms

LeetCode-43. 字符串相乘

问题地址 LeetCode每日一题/2020-08-13 LeetCode43. 字符串相乘 问题描述 规则 给定两个以字符串形式表示的非负整数 num1 和 num2,返回 num1 和 num2 的乘积,它们的乘积也表示为字符串形式。 示例1 输入: num1 = "2", num2 = "3" 输出: "6" 示例2 输入: num1 = "123", num2 = "456" 输出: "56088" 提示 num1 和 num2 的长度小于110。 num1 和 num2 只包含数字 0-9。 num1 和 num2 均不以零开头,除非是数字 0 本身。 不能使用任何标准库的大数类型(…
US-B.Ralph
a year ago

LeetCode-133. 克隆图

问题地址 LeetCode每日一题/2020-08-12 LeetCode133. 克隆图 问题描述 规则 给你无向连通图中一个节点的引用,请你返回该图的深拷贝克隆。 图中的每个节点都包含它的值 val(int) 和其邻居的列表(list)。 class Node { public int val; public List<Node> neighbors; } 测试用例格式 简单起见,每个节点的值都和它的索引相同。例如,第一个节点值为 1(val = 1),第二个节点值为 2(val = 2),以此类推。该图在测试用例中使用邻接列表表示。 邻接列表是用于表示有限图的无序列表的集合。…
US-B.Ralph
a year ago

LeetCode-130. 被围绕的区域

问题地址 LeetCode每日一题/2020-08-11 LeetCode130. 被围绕的区域 问题描述 规则 给定一个二维的矩阵,包含 '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'。如果两…
US-B.Ralph
a year ago

LeetCode-696.计数二进制子串

问题地址 LeetCode每日一题/2020-08-10 LeetCode696.计数二进制字串 问题描述 规则 给定一个字符串 s,计算具有相同数量0和1的非空(连续)子字符串的数量,并且这些子字符串中的所有0和所有1都是组合在一起的。 重复出现的子串要计算它们出现的次数。 示例 示例 1 : 输入: "00110011" 输出: 6 解释: 有6个子串具有相同数量的连续1和0:“0011”,“01”,“1100”,“10”,“0011” 和 “01”。 请注意,一些重复出现的子串要计算它们出现的次数。 另外,“00110011”不是有效的子串,因为所有的0(和1)没有组合在一起。(作者注:…
US-B.Ralph
a year ago

LeetCode-1226.哲学家进餐

LeetCode-1226.哲学家进餐 题目地址(点这里跳转) 题目描述 5 个沉默寡言的哲学家围坐在圆桌前,每人面前一盘意面。叉子放在哲学家之间的桌面上。(5 个哲学家,5 根叉子) 所有的哲学家都只会在思考和进餐两种行为间交替。哲学家只有同时拿到左边和右边的叉子才能吃到面,而同一根叉子在同一时间只能被一个哲学家使用。每个哲学家吃完面后都需要把叉子放回桌面以供其他哲学家吃面。只要条件允许,哲学家可以拿起左边或者右边的叉子,但在没有同时拿到左右叉子时不能进食。 假设面的数量没有限制,哲学家也能随便吃,不需要考虑吃不吃得下。 设计一个进餐规则(并行算法)使得每个哲学家都不会挨饿;也就是说,在没有…
US-B.Ralph
a year ago