算法
2629352674
这个作者很懒,什么都没留下…
展开
-
dfs bfs
输出:[“ad”,“ae”,“af”,“bd”,“be”,“bf”,“cd”,“ce”,“cf”]给定一个仅包含数字 2-9 的字符串,返回所有它能表示的字母组合。答案可以按 任意顺序 返回。给出数字到字母的映射如下(与电话按键相同)。注意 1 不对应任何字母。输入:digits = “23”输出:[“a”,“b”,“c”]输入:digits = “2”输入:digits = “”原创 2022-10-18 20:47:30 · 165 阅读 · 0 评论 -
分发糖果贪心
解释:你可以分别给第一个、第二个、第三个孩子分发 2、1、2 颗糖果。解释:你可以分别给第一个、第二个、第三个孩子分发 1、2、1 颗糖果。请你给每个孩子分发糖果,计算并返回需要准备的 最少糖果数目。第三个孩子只得到 1 颗糖果,这满足题面中的两个条件。相邻两个孩子评分更高的孩子会获得更多的糖果。输入:ratings = [1,0,2]输入:ratings = [1,2,2]每个孩子至少分配到 1 个糖果。原创 2022-10-16 00:30:28 · 136 阅读 · 0 评论 -
7. 反转
如果反转后整数超过 32 位的有符号整数的范围 [−231, 231 − 1] ,就返回 0。假设环境不允许存储 64 位整数(有符号或无符号)。输入:x = -123。输入:x = 123。输入:x = 120。原创 2022-09-26 22:02:02 · 108 阅读 · 0 评论 -
回溯的思考
输出:[[1,2,3],[1,3,2],[2,1,3],[2,3,1],[3,1,2],[3,2,1]]如果我们可以通过上述方式得到 2 的幂,返回 true;否则,返回 false。private void back(“原始参数”)//一些逻辑操作(可有可无,视情况而定)//一些逻辑操作(可有可无,视情况而定)backtrack(“新的参数”);输入:nums = [1,1,2]输入:nums = [1,2,3]if("终止条件“){原创 2022-09-06 20:08:02 · 114 阅读 · 0 评论 -
按摩师预约请求
一个有名的按摩师会收到源源不断的预约请求,每个预约都可以选择接或不接。在每次预约服务之间要有休息时间,因此她不能接受相邻的预约。给定一个预约请求序列,替按摩师找到最优的预约集合(总预约时间最长),返回总的分钟数。解释: 选择 1 号预约、 3 号预约和 5 号预约,总时长 = 2 + 9 + 1 = 12。解释: 选择 1 号预约和 3 号预约,总时长 = 1 + 3 = 4。输入: [2,7,9,3,1]面试题 17.16. 按摩师。输入: [1,2,3,1]...原创 2022-08-29 09:41:46 · 120 阅读 · 0 评论 -
买卖股票的最佳时机 II
解释:在第 1 天(股票价格 = 1)的时候买入,在第 5 天 (股票价格 = 5)的时候卖出, 这笔交易所能获得利润 = 5 - 1 = 4。解释:在第 2 天(股票价格 = 1)的时候买入,在第 3 天(股票价格 = 5)的时候卖出, 这笔交易所能获得利润 = 5 - 1 = 4。随后,在第 4 天(股票价格 = 3)的时候买入,在第 5 天(股票价格 = 6)的时候卖出, 这笔交易所能获得利润 = 6 - 3 = 3。输入:prices = [7,1,5,3,6,4]原创 2022-08-24 10:20:18 · 64 阅读 · 0 评论 -
打家劫舍 III dp
除了 root 之外,每栋房子有且只有一个“父“房子与之相连。一番侦察之后,聪明的小偷意识到“这个地方的所有房屋的排列类似于一棵二叉树”。给定二叉树的 root。返回 在不触动警报的情况下 ,小偷能够盗取的最高金额。小偷又发现了一个新的可行窃的地区。输入: root = [3,2,3,null,3,null,1]解释: 小偷一晚能够盗取的最高金额 3 + 3 + 1 = 7。输入: root = [3,4,5,1,3,null,1]解释: 小偷一晚能够盗取的最高金额 4 + 5 = 9。原创 2022-08-22 16:31:51 · 72 阅读 · 0 评论 -
最长回文子序列
链接:https://leetcode.cn/problems/longest-palindromic-subsequence。子序列定义为:不改变剩余字符顺序的情况下,删除某些字符或者不删除任何字符形成的一个序列。子序列定义为:不改变剩余字符顺序的情况下,删除某些字符或者不删除任何字符形成的一个序列。给你一个字符串 s ,找出其中最长的回文子序列,并返回该序列的长度。解释:一个可能的最长回文子序列为 “bbbb”。解释:一个可能的最长回文子序列为 “bb”。输入:s = “bbbab”......原创 2022-08-18 17:15:50 · 84 阅读 · 0 评论 -
中心扩散法
推导-------------------------------------------------------->dp[i][j] = j-i原创 2022-08-17 16:53:21 · 113 阅读 · 0 评论 -
剑指 Offer 47. 礼物的最大价值 dp
在一个 m*n 的棋盘的每一格都放有一个礼物,每个礼物都有一定的价值(价值大于 0)。你可以从棋盘的左上角开始拿格子里的礼物,并每次向右或者向下移动一格、直到到达棋盘的右下角。给定一个棋盘及其上面的礼物的价值,请计算你最多能拿到多少价值的礼物?解释: 路径 1→3→5→2→1 可以拿到最多价值的礼物。剑指 Offer 47. 礼物的最大价值。......原创 2022-08-15 11:00:12 · 117 阅读 · 0 评论 -
最长的斐波那契子序列的长度
例如, [3, 5, 8] 是 [3, 4, 5, 6, 7, 8] 的一个子序列)如果一个不存在,返回 0。解释: 最长的斐波那契式子序列有 [1,11,12]、[3,11,14] 以及 [7,11,18]。如果序列 X_1, X_2, …对于所有 i + 2原创 2022-08-14 23:23:36 · 309 阅读 · 0 评论 -
力扣1277. 统计全为 1 的正方形子矩阵
递推公式 dp[i][j]= min(dp[i][j-1],dp[i-1][j],dp[i-1],dp[i-1][j-1])+1;给你一个 m * n 的矩阵,矩阵中的元素不是 0 就是 1,请你统计并返回其中完全由 1 组成的 正方形 子矩阵的个数。正方形的总数 = 10 + 4 + 1 = 15.边长为 1 的正方形有 10 个。边长为 2 的正方形有 4 个。边长为 3 的正方形有 1 个。输入:matrix =...原创 2022-08-13 21:49:00 · 186 阅读 · 0 评论 -
分割回文串 II
给你一个字符串 s,请你将 s 分割成一些子串,使每个子串都是回文。返回符合要求的 最少分割次数。原创 2022-08-12 15:17:24 · 96 阅读 · 0 评论 -
戳气球 dp
代码】戳气球 dp。原创 2022-08-11 10:47:17 · 57 阅读 · 0 评论 -
戳气球 递归解法
int [][] m 优化时间复杂度。原创 2022-08-10 17:02:31 · 88 阅读 · 0 评论 -
解不相交的线
个 元 素 和 nums2 的 前 j -1 个 元 素 所 能 绘 制 的 最 大 连 接 数 加1 , 也 就 是 dp[i][j]=dp[i -1]定义dp[i][j] 表 示 数 组 nums1 的 前 i 个 元 素 和 nums2 的 前 j 个 元 素 所 能 绘 制 的 最 大 连 接。nums2的前j -1个元素和nums1的前i个元素能绘制的最大连接数,也就是dp[i][j -1] ,候nums1的前i个元素和nums2的前j个元素所能绘制的最大连接数就是nums1的前i -1。...原创 2022-08-09 16:51:30 · 97 阅读 · 0 评论 -
组合总和
代码】组合总和。原创 2022-08-07 18:03:24 · 109 阅读 · 0 评论 -
给定两个字符串str1和str2,输出两个字符串的最长公共子串(动态规划)
数据范围: 1 \le |str1|,|str2| \le 50001≤∣str1∣,∣str2∣≤5000。给定两个字符串str1和str2,输出两个字符串的最长公共子串。题目保证str1和str2的最长公共子串存在且唯一。要求: 空间复杂度 O(n^2)O(n。),时间复杂度 O(n^2)O(n。...原创 2022-08-05 18:05:11 · 1072 阅读 · 0 评论 -
最大的以1为边界的正方形
1.先计算连续1的个数。原创 2022-08-05 17:29:40 · 89 阅读 · 0 评论 -
不同的子序列
字符串的一个 子序列 是指,通过删除一些(也可以不删除)字符且不干扰剩余字符相对位置所组成的新字符串。(例如,“ACE” 是 “ABCDE” 的一个子序列,而 “AEC” 不是)给定一个字符串 s 和一个字符串 t ,计算在 s 的子序列中 t 出现的个数。如下图所示, 有 3 种可以从 s 中得到 “rabbit” 的方案。如下图所示, 有 5 种可以从 s 中得到 “bag” 的方案。输入:s = “rabbbit”, t = “rabbit”输入:s = “babgbag”, t = “bag”...原创 2022-08-03 19:16:15 · 145 阅读 · 0 评论 -
目标和 1.dfs 2.动态规划
1.dfs 2.动态规划。原创 2022-08-03 16:24:30 · 113 阅读 · 0 评论 -
dp 问题入门
注意你不能同时参与多笔交易(你必须在再次购买前出售掉之前的股票)。时间复杂n^2*2。原创 2022-08-01 18:40:59 · 86 阅读 · 0 评论