随笔分类 -  LeetCode

摘要:JD15 括号匹配方案 一道明显是栈,但是不好下手的题目。 题目描述 合法的括号匹配序列被定义为: 空串""是合法的括号序列 如果"X"和"Y"是合法的序列,那么"XY"也是一个合法的括号序列 如果"X"是一个合法的序列,那么"(X)"也是一个合法的括号序列 每个合法的括号序列都可以由上面的规则生成 阅读全文
posted @ 2021-10-09 15:34 与MPI做斗争 阅读(80) 评论(0) 推荐(0)
摘要:LeetCode 187. 重复的DNA序列 一道滚动哈希的题目,注意运算符优先级问题。 题目描述 所有 DNA 都由一系列缩写为 'A','C','G' 和 'T' 的核苷酸组成,例如:"ACGAATTCCG"。在研究 DNA 时,识别 DNA 中的重复序列有时会对研究非常有帮助。 编写一个函数来 阅读全文
posted @ 2021-10-08 16:21 与MPI做斗争 阅读(65) 评论(0) 推荐(0)
摘要:LeetCode 162. 寻找峰值 对数时间查找峰值的算法。 题目描述 峰值元素是指其值严格大于左右相邻值的元素。 给你一个整数数组 nums,找到峰值元素并返回其索引。数组可能包含多个峰值,在这种情况下,返回 任何一个峰值 所在位置即可。 你可以假设 nums[-1] = nums[n] = - 阅读全文
posted @ 2021-10-03 18:37 与MPI做斗争 阅读(85) 评论(0) 推荐(0)
摘要:LeetCode 71. 简化路径 一道简单的题目,重点是演示C++如何简单实现按照指定字符分割字符串。 题目描述 给你一个字符串 path ,表示指向某一文件或目录的 Unix 风格 绝对路径 (以 '/' 开头),请你将其转化为更加简洁的规范路径。 在 Unix 风格的文件系统中,一个点(.)表 阅读全文
posted @ 2021-09-25 11:15 与MPI做斗争 阅读(40) 评论(0) 推荐(0)
摘要:LeetCode 面试题 03.05. 栈排序 题目描述 栈排序。 编写程序,对栈进行排序使最小元素位于栈顶。最多只能使用一个其他的临时栈存放数据,但不得将元素复制到别的数据结构(如数组)中。该栈支持如下操作:push、pop、peek 和 isEmpty。当栈为空时,peek 返回 -1。 示例1 阅读全文
posted @ 2021-09-25 10:40 与MPI做斗争 阅读(153) 评论(0) 推荐(0)
摘要:LeetCode 829. 连续整数求和 其实是一道数学题。把他当作一道待定系数的一元二次方程,然后求其合法整数取值。 题目描述 给定一个正整数 N,试求有多少组连续正整数满足所有数字之和为 N? 示例 1: 输入: 5 输出: 2 解释: 5 = 5 = 2 + 3,共有两组连续整数([5],[2 阅读全文
posted @ 2021-09-23 10:50 与MPI做斗争 阅读(259) 评论(0) 推荐(0)
摘要:LeetCode 29. 两数相除 用位运算模拟除法。 题目描述 给定两个整数,被除数 dividend 和除数 divisor。将两数相除,要求不使用乘法、除法和 mod 运算符。 返回被除数 dividend 除以除数 divisor 得到的商。 整数除法的结果应当截去(truncate)其小数 阅读全文
posted @ 2021-09-22 17:33 与MPI做斗争 阅读(83) 评论(0) 推荐(0)
摘要:LeetCode 470. 用 Rand7() 实现 Rand10() 一道经典面试题。 题目描述 已有方法 rand7 可生成 1 到 7 范围内的均匀随机整数,试写一个方法 rand10 生成 1 到 10 范围内的均匀随机整数。 不要使用系统的 Math.random() 方法。 示例 1: 阅读全文
posted @ 2021-09-17 17:21 与MPI做斗争 阅读(49) 评论(0) 推荐(0)
摘要:LeetCode 341. 扁平化嵌套列表迭代器 题目描述 给你一个嵌套的整数列表 nestedList 。每个元素要么是一个整数,要么是一个列表;该列表的元素也可能是整数或者是其他列表。请你实现一个迭代器将其扁平化,使之能够遍历这个列表中的所有整数。 实现扁平迭代器类 NestedIterator 阅读全文
posted @ 2021-09-17 16:08 与MPI做斗争 阅读(85) 评论(0) 推荐(0)
摘要:LeetCode 3. 无重复字符的最长子串 题目描述 给定一个字符串 s ,请你找出其中不含有重复字符的 最长子串 的长度。 示例 1: 输入: s = "abcabcbb" 输出: 3 解释: 因为无重复字符的最长子串是 "abc",所以其长度为 3。 示例 2: 输入: s = "bbbbb" 阅读全文
posted @ 2021-09-17 00:07 与MPI做斗争 阅读(30) 评论(0) 推荐(0)
摘要:LeetCode 179. 最大数 题目描述 给定一组非负整数 nums,重新排列每个数的顺序(每个数不可拆分)使之组成一个最大的整数。 注意:输出结果可能非常大,所以你需要返回一个字符串而不是整数。 示例 1: 输入:nums = [10,2] 输出:"210" 示例 2: 输入:nums = [ 阅读全文
posted @ 2021-09-16 19:56 与MPI做斗争 阅读(45) 评论(0) 推荐(0)
摘要:LeetCode 220. 存在重复元素 III 一道medium题,但是不好想,想不到。 题目描述 给你一个整数数组 nums 和两个整数 k 和 t 。请你判断是否存在 两个不同下标 i 和 j,使得 abs(nums[i] - nums[j]) ⇐ t ,同时又满足 abs(i - j) ⇐ 阅读全文
posted @ 2021-09-15 23:03 与MPI做斗争 阅读(39) 评论(0) 推荐(0)
摘要:LeetCode 891. 子序列宽度之和 一道hard题目,经历了多轮优化。 题目描述 给定一个整数数组 A ,考虑 A 的所有非空子序列。 对于任意序列 S ,设 S 的宽度是 S 的最大元素和最小元素的差。 返回 A 的所有子序列的宽度之和。 由于答案可能非常大,请返回答案模 10^9+7。 阅读全文
posted @ 2021-09-14 19:52 与MPI做斗争 阅读(107) 评论(0) 推荐(0)
摘要:LeetCode 447. Number of Boomerangs 题目描述 You are given n points in the plane that are all distinct, where points[i] = [xi, yi]. A boomerang is a tuple 阅读全文
posted @ 2021-09-13 12:25 与MPI做斗争 阅读(43) 评论(0) 推荐(0)
摘要:HJ93 数组分组 dfs/dp 题目描述 输入int型数组,询问该数组能否分成两组,使得两组中各元素加起来的和相等,并且,所有5的倍数必须在其中一个组中,所有3的倍数在另一个组中(不包括5的倍数),能满足以上条件,输出true;不满足时输出false。 本题含有多组样例输入。 输入描述: 第一行是 阅读全文
posted @ 2021-09-11 15:13 与MPI做斗争 阅读(308) 评论(0) 推荐(0)
摘要:HJ77 火车进站 题目描述 给定一个正整数N代表火车数量,0<N<10,接下来输入火车入站的序列,一共N辆火车,每辆火车以数字1-9编号,火车站只有一个方向进出,同时停靠在火车站的列车中,只有后进站的出站了,先进站的才能出站。 要求输出所有火车出站的方案,以字典序排序输出。 输入描述: 有多组测试 阅读全文
posted @ 2021-09-10 23:48 与MPI做斗争 阅读(455) 评论(0) 推荐(0)
摘要:LeetCode 338. 比特位计数 一道简单题,但是把位运算和DP结合起来,很有意思。 题目描述 给定一个非负整数 num。对于 0 ≤ i ≤ num 范围中的每个数字 i ,计算其二进制数中的 1 的数目并将它们作为数组返回。 示例 1: 输入: 2 输出: [0,1,1] 示例 2: 输入 阅读全文
posted @ 2021-09-10 17:49 与MPI做斗争 阅读(47) 评论(0) 推荐(0)
摘要:LeetCode 264. 丑数 II 题目描述 给你一个整数 n ,请你找出并返回第 n 个 丑数 。 丑数 就是只包含质因数 2、3 和/或 5 的正整数。 示例 1: 输入:n = 10 输出:12 解释:[1, 2, 3, 4, 5, 6, 8, 9, 10, 12] 是由前 10 个丑数组 阅读全文
posted @ 2021-09-03 11:00 与MPI做斗争 阅读(29) 评论(0) 推荐(0)
摘要:LeetCode 229. 求众数 II 给定一个大小为 n 的整数数组,找出其中所有出现超过 ⌊ n/3 ⌋ 次的元素。 进阶:尝试设计时间复杂度为 O(n)、空间复杂度为 O(1)的算法解决此问题。 示例 1: 输入:[3,2,3] 输出:[3] 示例 2: 输入:nums = [1] 输出:[ 阅读全文
posted @ 2021-09-03 10:22 与MPI做斗争 阅读(40) 评论(0) 推荐(0)
摘要:NC41 最长无重复子数组 题目描述 给定一个数组arr,返回arr的最长无重复元素子数组的长度,无重复指的是所有数字都不相同。 子数组是连续的,比如[1,3,5,7,9]的子数组有[1,3],[3,5,7]等等,但是[1,3,7]不是子数组 示例1 输入: [2,3,4,5] 返回值: 4 说明: 阅读全文
posted @ 2021-09-02 17:08 与MPI做斗争 阅读(111) 评论(0) 推荐(0)