leetcode之路
文章平均质量分 66
Anpedestrian
这个作者很懒,什么都没留下…
展开
-
leetcode-140. 单词拆分 II (字典树/dp + 回溯法) + 字节测开字典树算法题
给定一个非空字符串 s 和一个包含非空单词列表的字典 wordDict,在字符串中增加空格来构建一个句子,使得句子中所有的单词都在词典中。返回所有这些可能的句子。说明:分隔时可以重复使用字典中的单词。你可以假设字典中没有重复的单词。示例 1:输入:s = "catsanddog"wordDict = ["cat", "cats", "and", "sand", "dog"]输出:["cats and dog","cat sand dog"]示例 2:输入:s =...原创 2021-05-22 22:08:33 · 527 阅读 · 3 评论 -
剑指 Offer 59 - II. 队列的最大值
请定义一个队列并实现函数 max_value 得到队列里的最大值,要求函数max_value、push_back 和 pop_front 的均摊时间复杂度都是O(1)。若队列为空,pop_front 和 max_value需要返回 -1示例 1:输入:["MaxQueue","push_back","push_back","max_value","pop_front","max_value"][[],[1],[2],[],[],[]]输出:[null,null,null,2,1,2]...原创 2021-03-11 16:34:35 · 142 阅读 · 0 评论 -
leetcode-最大子序和(dp or 线段树)
最大子序和难度简单2541给定一个整数数组nums,找到一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。示例:输入: [-2,1,-3,4,-1,2,1,-5,4]输出: 6解释:连续子数组[4,-1,2,1] 的和最大,为6。进阶:如果你已经实现复杂度为 O(n) 的解法,尝试使用更为精妙的分治法求解。解题思路:动态规划的思想,这是一道最简单的求连续子序列和的问题,只需要在记忆化数组的基础上添加一个变量时刻更新最大的和即可,因为只...原创 2020-10-19 20:21:58 · 146 阅读 · 0 评论 -
leetcode--最大整数子集(dp+数论+动态数组)
给出一个由无重复的正整数组成的集合,找出其中最大的整除子集,子集中任意一对 (Si,Sj) 都要满足:Si % Sj = 0 或 Sj % Si = 0。如果有多个目标子集,返回其中任何一个均可。示例 1:输入: [1,2,3]输出: [1,2] (当然, [1,3] 也正确)示例 2:输入: [1,2,4,8]输出: [1,2,4,8]来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/largest-divisible-.原创 2020-09-21 19:11:36 · 431 阅读 · 0 评论 -
leetcode--不同路径(动态规划)
一个机器人位于一个 m x n 网格的左上角 (起始点在下图中标记为“Start” )。机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角(在下图中标记为“Finish”)。问总共有多少条不同的路径?例如,上图是一个7 x 3 的网格。有多少可能的路径?示例1:输入: m = 3, n = 2输出: 3解释:从左上角开始,总共有 3 条路径可以到达右下角。1. 向右 -> 向右 -> 向下2. 向右 -> 向下 -> 向右3. 向下 .原创 2020-09-20 19:25:37 · 267 阅读 · 0 评论 -
leetcode--从二叉搜索树到更大和树
给出二叉 搜索 树的根节点,该二叉树的节点值各不相同,修改二叉树,使每个节点 node的新值等于原树中大于或等于node.val的值之和。提醒一下,二叉搜索树满足下列约束条件:节点的左子树仅包含键 小于 节点键的节点。节点的右子树仅包含键 大于 节点键的节点。左右子树也必须是二叉搜索树。示例:输入:[4,1,6,0,2,5,7,null,null,null,3,null,null,null,8]输出:[30,36,21,36,35,26,15,null,null,null,3...原创 2020-09-20 18:46:08 · 155 阅读 · 0 评论 -
leetcode--三数之和(排序+双游标)
给你一个包含 n 个整数的数组nums,判断nums中是否存在三个元素 a,b,c ,使得a + b + c = 0 ?请你找出所有满足条件且不重复的三元组。注意:答案中不可以包含重复的三元组。示例:给定数组 nums = [-1, 0, 1, 2, -1, -4],满足要求的三元组集合为:[ [-1, 0, 1], [-1, -1, 2]]解题思路:因为题目要求结果列表中的列表序列是不可以重复的(这种题不用想搜索,还需要控制上下元素是否相同,传参极其麻烦...原创 2020-09-19 21:47:59 · 92 阅读 · 0 评论 -
leetcode- 电话号码的字母组合(dfs)
给定一个仅包含数字2-9的字符串,返回所有它能表示的字母组合。给出数字到字母的映射如下(与电话按键相同)。注意 1 不对应任何字母。示例:输入:"23"输出:["ad", "ae", "af", "bd", "be", "bf", "cd", "ce", "cf"].解题思路:设定按键与所包含字符的映射集合,设定返回的List集合,利用深度优先搜索的思想,按照给出的按键顺序逐层搜索即可。在每一层中,使用for循环,以当前字符取-继续下一层dfs-当前字符不取的过程搜索,直到搜索..原创 2020-09-18 18:47:48 · 215 阅读 · 0 评论