自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(50)
  • 收藏
  • 关注

原创 【代码随想录刷题笔记 Day 60】 84.柱状图中最大的矩形

个非负整数,用来表示柱状图中各个柱子的高度。每个柱子彼此相邻,且宽度为 1。求在该柱状图中,能够勾勒出来的矩形的最大面积。最大的矩形为图中红色区域,面积为 10。84.柱状图中最大的矩形。

2023-05-13 09:03:09 254 1

原创 【代码随想录刷题笔记 Day 59】503.下一个更大元素II | 42. 接雨水

给定一个循环数组 nums ( nums[nums.length - 1] 的下一个元素是 nums[0] ),返回 nums 中每个元素的 下一个更大元素。数字 x 的 下一个更大的元素 是按数组遍历顺序,这个数字之后的第一个比它更大的数,这意味着你应该循环地搜索它的下一个更大的数。解释:上面是由数组 [0,1,0,2,1,0,1,3,2,1,2,1] 表示的高度图,在这种情况下,可以接 6 个单位的雨水(蓝色部分表示雨水)。输入:height = [0,1,0,2,1,0,1,3,2,1,2,1]

2023-05-12 09:59:22 242

原创 【代码随想录刷题笔记 Day 58】739. 每日温度 | 496.下一个更大元素 I

对于每个 0 <= i < nums1.length ,找出满足 nums1[i] == nums2[j] 的下标 j ,并且在 nums2 确定 nums2[j] 的 下一个更大元素。给定一个整数数组 temperatures ,表示每天的温度,返回一个数组 answer ,其中 answer[i] 是指对于第 i 天,下一个更高温度出现在几天后。nums1 中数字 x 的 下一个更大元素 是指 x 在 nums2 中对应位置 右侧 的 第一个 比 x 大的元素。496.下一个更大元素 I。

2023-05-11 10:33:09 197

原创 【代码随想录刷题笔记 Day 57】647. 回文子串 | 516.最长回文子序列

子序列定义为:不改变剩余字符顺序的情况下,删除某些字符或者不删除任何字符形成的一个序列。具有不同开始位置或结束位置的子串,即使是由相同的字符组成,也会被视作不同的子串。给你一个字符串 s ,请你统计并返回这个字符串中 回文子串 的数目。给你一个字符串 s ,找出其中最长的回文子序列,并返回该序列的长度。子字符串 是字符串中的由连续字符组成的一个序列。回文字符串 是正着读和倒过来读一样的字符串。516.最长回文子序列。

2023-05-10 09:05:45 196

原创 【代码随想录刷题笔记 Day 56】583. 两个字符串的删除操作 | 72. 编辑距离

给你两个单词 word1 和 word2, 请返回将 word1 转换成 word2 所使用的最少操作数。可以删除任意一个字符串中的一个字符。583. 两个字符串的删除操作。583. 两个字符串的删除操作。

2023-05-09 10:24:56 73

原创 【代码随想录刷题笔记 Day 55】392.判断子序列 | 115.不同的子序列

字符串的一个子序列是原始字符串删除一些(也可以不删除)字符而不改变剩余字符相对位置形成的新字符串。(例如,"ace"是"abcde"的一个子序列,而"aec"不是)。如果有大量输入的 S,称作 S1, S2, ... , Sk 其中 k >= 10亿,你需要依次检查它们是否为 T 的子序列。在这种情况下,你会怎样改变代码?给定字符串 s 和 t ,判断 s 是否为 t 的子序列。题目数据保证答案符合 32 位带符号整数范围。115.不同的子序列。

2023-05-08 09:26:33 93

原创 【代码随想录刷题笔记 Day 53】1143.最长公共子序列 | 1035.不相交的线 | 53.最大子序和

一个字符串的 子序列 是指这样一个新的字符串:它是由原字符串在不改变字符的相对顺序的情况下删除某些字符(也可以不删除任何字符)后组成的新字符串。给定两个字符串 text1 和 text2,返回这两个字符串的最长 公共子序列 的长度。如果不存在 公共子序列 ,返回 0。例如,"ace" 是 "abcde" 的子序列,但 "aec" 不是 "abcde" 的子序列。,请你找出一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。两个字符串的 公共子序列 是这两个字符串所共同拥有的子序列。

2023-05-06 09:54:48 317

原创 【代码随想录刷题笔记 Day 52】300.最长递增子序列 | 674. 最长连续递增序列 | 718. 最长重复子数组

连续递增的子序列 可以由两个下标 l 和 r(l < r)确定,如果对于每个 l <= i < r,都有 nums[i] < nums[i + 1] ,那么子序列 [nums[l], nums[l + 1], ..., nums[r - 1], nums[r]] 就是连续递增子序列。例如,[3,6,2,7] 是数组 [0,3,1,6,2,2,7] 的子序列。给定一个未经排序的整数数组,找到最长且 连续递增的子序列,并返回该序列的长度。给你一个整数数组 nums ,找到其中最长严格递增子序列的长度。

2023-05-05 09:14:39 118

原创 【代码随想录刷题笔记 Day 51】 309.最佳买卖股票时机含冷冻期 | 714.买卖股票的最佳时机含手续费 | 总结

给定一个整数数组 prices,其中 prices[i]表示第 i 天的股票价格;你可以无限次地完成交易,但是你每笔交易都需要付手续费。如果你已经购买了一个股票,在卖出它之前你就不能再继续购买股票了。给定一个整数数组prices,其中第 prices[i] 表示第 i 天的股票价格。注意:这里的一笔交易指买入持有并卖出股票的整个过程,每笔交易你只需要为支付一次手续费。注意:你不能同时参与多笔交易(你必须在再次购买前出售掉之前的股票)。卖出股票后,你无法在第二天买入股票 (即冷冻期为 1 天)。

2023-05-04 09:22:36 123

原创 【代码随想录刷题笔记 Day 50】123.买卖股票的最佳时机III | 188.买卖股票的最佳时机IV

给定一个整数数组 prices ,它的第 i 个元素 prices[i] 是一支给定的股票在第 i 天的价格,和一个整型 k。设计一个算法来计算你所能获取的最大利润。你最多可以完成 k 笔交易。也就是说,你最多可以买 k 次,卖 k 次。给定一个数组,它的第 i 个元素是一支给定的股票在第 i 天的价格。设计一个算法来计算你所能获取的最大利润。注意:你不能同时参与多笔交易(你必须在再次购买前出售掉之前的股票)。注意:你不能同时参与多笔交易(你必须在再次购买前出售掉之前的股票)。

2023-05-03 11:13:57 108

原创 【代码随想录刷题笔记 Day 49】121. 买卖股票的最佳时机 | 122.买卖股票的最佳时机II

在每一天,你可以决定是否购买和/或出售股票。你在任何时候 最多 只能持有 一股 股票。你只能选择 某一天 买入这只股票,并选择在 未来的某一个不同的日子 卖出该股票。设计一个算法来计算你所能获取的最大利润。给定一个数组 prices ,它的第 i 个元素 prices[i] 表示一支给定股票第 i 天的价格。给你一个整数数组 prices ,其中 prices[i] 表示某支股票第 i 天的价格。返回你可以从这笔交易中获取的最大利润。如果你不能获取任何利润,返回 0。返回 你能获得的 最大 利润。

2023-05-03 10:11:51 83

原创 【代码随想录刷题笔记 Day 46】139.单词拆分

给你一个字符串 s 和一个字符串列表 wordDict 作为字典。请你判断是否可以利用字典中出现的单词拼接出 s。注意:不要求字典中出现的单词全部都使用,并且字典中的单词可以重复使用。

2023-04-29 09:02:13 143

原创 【代码随想录刷题笔记 Day 45】70. 爬楼梯 (进阶) | 322. 零钱兑换 | 279.完全平方数

完全平方数 是一个整数,其值等于另一个整数的平方;换句话说,其值等于一个整数自乘的积。例如,1、4、9 和 16 都是完全平方数,而 3 和 11 不是。计算并返回可以凑成总金额所需的 最少的硬币个数。如果没有任何一种硬币组合能组成总金额,返回 -1。给你一个整数数组 coins ,表示不同面额的硬币;以及一个整数 amount ,表示总金额。给你一个整数 n ,返回 和为 n 的完全平方数的最少数量。你有多少种不同的方法可以爬到楼顶呢?你可以认为每种硬币的数量是无限的。70. 爬楼梯 (进阶)

2023-04-28 09:30:12 120

原创 【代码随想录刷题笔记 Day 44】518. 零钱兑换 II | 377. 组合总和 Ⅳ

给你一个由 不同 整数组成的数组 nums ,和一个目标整数 target。请你从 nums 中找出并返回总和为 target 的元素组合的个数。给你一个整数数组 coins 表示不同面额的硬币,另给一个整数 amount 表示总金额。请你计算并返回可以凑成总金额的硬币组合数。如果任何硬币组合都无法凑出总金额,返回 0。题目数据保证结果符合 32 位带符号整数。题目数据保证答案符合 32 位整数范围。假设每一种面额的硬币有无限个。518. 零钱兑换 II。518. 零钱兑换 II。

2023-04-27 10:06:13 96

原创 【代码随想录刷题笔记 Day 43】1049. 最后一块石头的重量 II | 494. 目标和 | 474.一和零

例如,nums = [2, 1] ,可以在 2 之前添加 '+' ,在 1 之前添加 '-' ,然后串联起来得到表达式 "+2-1"。每一回合,从中选出任意两块石头,然后将它们一起粉碎。假设石头的重量分别为 x 和 y,且 x <= y。= y,那么重量为 x 的石头将会完全粉碎,而重量为 y 的石头新重量为 y-x。请你找出并返回 strs 的最大子集的长度,该子集中 最多 有 m 个 0 和 n 个 1。如果 x 的所有元素也是 y 的元素,集合 x 是集合 y 的 子集。

2023-04-26 10:14:53 114

原创 【代码随想录刷题笔记 Day 42】01背包问题,你该了解这些 | 01背包问题,你该了解这些! 滚动数组 | 416. 分割等和子集

01背包问题,你该了解这些01背包问题,你该了解这些01背包问题,你该了解这些!滚动数组416. 分割等和子集。

2023-04-25 10:58:59 131

原创 【代码随想录刷题笔记 Day 41】 343. 整数拆分 | 96.不同的二叉搜索树

返回满足题意的二叉搜索树的种数。),并使这些整数的乘积最大化。个节点组成且节点值从。96.不同的二叉搜索树。你可以获得的最大乘积。

2023-04-24 09:26:16 138

原创 【代码随想录刷题笔记 Day 39】62.不同路径 | 63. 不同路径 II

机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角(在下图中标记为 “Finish” )。机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角(在下图中标记为 “Finish”)。一个机器人位于一个 m x n 网格的左上角 (起始点在下图中标记为 “Start” )。一个机器人位于一个 m x n 网格的左上角 (起始点在下图中标记为 “Start” )。那么从左上角到右下角将会有多少条不同的路径?网格中的障碍物和空位置分别用 1 和 0 来表示。问总共有多少条不同的路径?

2023-04-22 09:40:38 124

原创 【代码随想录刷题笔记 Day 38】理论基础 | 509. 斐波那契数 | 70. 爬楼梯 | 746. 使用最小花费爬楼梯

给你一个整数数组 cost ,其中 cost[i] 是从楼梯第 i 个台阶向上爬需要支付的费用。一旦你支付此费用,即可选择向上爬一个或者两个台阶。斐波那契数 (通常用 F(n) 表示)形成的序列称为 斐波那契数列。该数列由 0 和 1 开始,后面的每一项数字都是前面两项数字的和。F(n) = F(n - 1) + F(n - 2),其中 n > 1。你可以选择从下标为 0 或下标为 1 的台阶开始爬楼梯。请你计算并返回达到楼梯顶部的最低花费。给定 n ,请计算 F(n)。746. 使用最小花费爬楼梯。

2023-04-21 09:43:00 139

原创 【代码随想录训练营37天】738.单调递增的数字 | 总结

当且仅当每个相邻位数上的数字 x 和 y 满足 x <= y 时,我们称这个整数是单调递增的。给定一个整数 n ,返回 小于或等于 n 的最大数字,且数字呈 单调递增。738.单调递增的数字。738.单调递增的数字。

2023-04-20 09:23:56 37

原创 【代码随想录刷题笔记 Day 36】435. 无重叠区间 | 763.划分字母区间 | 56. 合并区间

以数组 intervals 表示若干个区间的集合,其中单个区间为 intervals[i] = [starti, endi]。请你合并所有重叠的区间,并返回 一个不重叠的区间数组,该数组需恰好覆盖输入中的所有区间。给定一个区间的集合 intervals ,其中 intervals[i] = [starti, endi]。返回 需要移除区间的最小数量,使剩余区间互不重叠。注意,划分结果需要满足:将所有划分结果按顺序连接,得到的字符串仍然是 s。返回一个表示每个字符串片段的长度的列表。

2023-04-19 09:52:39 67

原创 【代码随想录刷题笔记 Day 35】860.柠檬水找零 | 406.根据身高重建队列 | 452. 用最少数量的箭引爆气球

在坐标 x 处射出一支箭,若有一个气球的直径的开始和结束坐标为 xstart,xend, 且满足 xstart ≤ x ≤ xend,则该气球会被 引爆。可以射出的弓箭的数量 没有限制。墙面上的气球记录在整数数组 points ,其中points[i] = [xstart, xend] 表示水平直径在 xstart 和 xend之间的气球。返回的队列应该格式化为数组 queue ,其中 queue[j] = [hj, kj] 是队列中第 j 个人的属性(queue[0] 是排在队列前面的人)。

2023-04-18 10:44:35 56

原创 【代码随想录刷题笔记 Day 34】 1005.K次取反后最大化的数组和 | 134. 加油站 | 135. 分发糖果

你有一辆油箱容量无限的的汽车,从第 i 个加油站开往第 i+1 个加油站需要消耗汽油 cost[i] 升。给定两个整数数组 gas 和 cost ,如果你可以绕环路行驶一周,则返回出发时加油站的编号,否则返回 -1。在一条环路上有 n 个加油站,其中第 i 个加油站有汽油 gas[i] 升。选择某个下标 i 并将 nums[i] 替换为 -nums[i]。请你给每个孩子分发糖果,计算并返回需要准备的 最少糖果数目。以这种方式修改数组后,返回数组 可能的最大和。每个孩子至少分配到 1 个糖果。

2023-04-17 10:59:26 83

原创 【代码随想录刷题笔记 Day 32】122.买卖股票的最佳时机II | 55. 跳跃游戏 | 45.跳跃游戏II

每个元素 nums[i] 表示从索引 i 向前跳转的最大长度。在每一天,你可以决定是否购买和/或出售股票。你也可以先购买,然后在 同一天 出售。返回到达 nums[n - 1] 的最小跳跃次数。生成的测试用例可以到达 nums[n - 1]。给你一个整数数组 prices ,其中 prices[i] 表示某支股票第 i 天的价格。给定一个长度为 n 的 0 索引整数数组 nums。初始位置为 nums[0]。数组中的每个元素代表你在该位置可以跳跃的最大长度。返回 你能获得的 最大 利润。

2023-04-15 11:03:10 158

原创 【代码随想录刷题笔记 Day 31】理论基础 | 455.分发饼干 | 376. 摆动序列 | 53. 最大子序和

\

2023-04-14 10:16:32 95

原创 【代码随想录刷题笔记 Day 30】 332.重新安排行程 | 51. N皇后 | 37. 解数独 | 总结

如果存在多种有效的行程,请你按字典排序返回最小的行程组合。每一种解法包含一个不同的 n 皇后问题 的棋子放置方案,该方案中 'Q' 和 '.' 分别代表了皇后和空位。例如,行程 ["JFK", "LGA"] 与 ["JFK", "LGB"] 相比就更小,排序更靠前。n 皇后问题 研究的是如何将 n 个皇后放置在 n×n 的棋盘上,并且使皇后彼此之间不能相互攻击。按照国际象棋的规则,皇后可以攻击与之处在同一行或同一列或同一斜线上的棋子。给你一个整数 n ,返回所有不同的 n 皇后问题 的解决方案。

2023-04-13 10:56:19 90

原创 【代码随想录刷题笔记 Day 29】491.递增子序列 | 46.全排列 |47.全排列 II

给你一个整数数组 nums ,找出并返回所有该数组中不同的递增子序列,递增子序列中 至少有两个元素。你可以按 任意顺序 返回答案。数组中可能含有重复元素,如出现两个整数相等,也可以视作递增序列的一种特殊情况。给定一个可包含重复数字的序列。给定一个不含重复数字的数组。返回所有不重复的全排列。

2023-04-12 10:03:05 124

原创 【代码随想录刷题笔记 Day 28】 93.复原IP地址 | 78.子集 | 90.子集II

给定一个只包含数字的字符串 s ,用以表示一个 IP 地址,返回所有可能的有效 IP 地址,这些地址可以通过在 s 中插入 '.' 来形成。例如:"0.1.2.201" 和 "192.168.1.1" 是 有效 IP 地址,但是 "0.011.255.245"、"192.168.1.312" 和 "192.168@1.1" 是 无效 IP 地址。给你一个整数数组 nums ,其中可能包含重复元素,请你返回该数组所有可能的子集(幂集)。解集 不能 包含重复的子集。返回的解集中,子集可以按 任意顺序 排列。

2023-04-11 10:25:34 88

原创 【代码随想录刷题笔记 Day 27】39. 组合总和 |40.组合总和II | 131.分割回文串

给你一个 无重复元素 的整数数组 candidates 和一个目标整数 target ,找出 candidates 中可以使数字和为目标数 target 的 所有 不同组合 ,并以列表形式返回。你可以按 任意顺序 返回这些组合。给定一个候选人编号的集合 candidates 和一个目标数 target ,找出 candidates 中所有可以使数字和为 target 的组合。如果至少一个数字的被选数量不同,则两种组合是不同的。candidates 中的每个数字在每个组合中只能使用 一次。

2023-04-10 11:11:10 76

原创 【代码随想录刷题笔记 Day 25】216.组合总和III | 17.电话号码的字母组合

给定一个仅包含数字 2-9 的字符串,返回所有它能表示的字母组合。答案可以按 任意顺序 返回。返回 所有可能的有效组合的列表。该列表不能包含相同的组合两次,组合可以以任何顺序返回。给出数字到字母的映射如下(与电话按键相同)。注意 1 不对应任何字母。每个数字 最多使用一次。17.电话号码的字母组合。216.组合总和III。216.组合总和III。

2023-04-08 09:58:01 91

原创 【代码随想录刷题笔记 Day 24】理论基础 | 77. 组合

【代码】【代码随想录刷题笔记 Day 24】理论基础 | 77. 组合。

2023-04-07 09:21:45 118

原创 【代码随想录刷题笔记 Day 23】669. 修剪二叉搜索树 | 108.将有序数组转换为二叉搜索树 | 538.把二叉搜索树转换为累加树

修剪树 不应该 改变保留在树中的元素的相对结构 (即,如果没有被移除,原有的父代子代关系都应当保留)。给出二叉 搜索 树的根节点,该树的节点值各不相同,请你将其转换为累加树(Greater Sum Tree),使每个节点 node 的新值等于原树中大于或等于 node.val 的值之和。所以结果应当返回修剪好的二叉搜索树的新的根节点。高度平衡 二叉树是一棵满足「每个节点的左右两个子树的高度差的绝对值不超过 1 」的二叉树。节点的左子树仅包含键 小于 节点键的节点。节点的右子树仅包含键 大于 节点键的节点。

2023-04-06 09:27:39 39

原创 【代码随想录刷题笔记 Day 22】235. 二叉搜索树的最近公共祖先 | 701.二叉搜索树中的插入操作

给定二叉搜索树(BST)的根节点 root 和要插入树中的值 value ,将值插入二叉搜索树。返回插入后二叉搜索树的根节点。百度百科中最近公共祖先的定义为:“对于有根树 T 的两个结点 p、q,最近公共祖先表示为一个结点 x,满足 x 是 p、q 的祖先且 x 的深度尽可能大(一个节点也可以是它自己的祖先)。给定一个二叉搜索树的根节点 root 和一个值 key,删除二叉搜索树中的 key 对应的节点,并保证二叉搜索树的性质不变。返回二叉搜索树(有可能被更新)的根节点的引用。首先找到需要删除的节点;

2023-04-05 10:47:32 79

原创 【代码随想录刷题笔记 Day 21】530.二叉搜索树的最小绝对差 |

百度百科中最近公共祖先的定义为:“对于有根树 T 的两个节点 p、q,最近公共祖先表示为一个节点 x,满足 x 是 p、q 的祖先且 x 的深度尽可能大(一个节点也可以是它自己的祖先)。给你一个含重复值的二叉搜索树(BST)的根节点 root ,找出并返回 BST 中的所有 众数(即,出现频率最高的元素)。给定一个二叉树, 找到该树中两个指定节点的最近公共祖先。结点左子树中所含节点的值 小于等于 当前节点的值。结点右子树中所含节点的值 大于等于 当前节点的值。给你一个二叉搜索树的根节点。

2023-04-04 10:01:20 63

原创 【代码随想录刷题笔记 Day 20】654.最大二叉树 | 617.合并二叉树 | 700.二叉搜索树中的搜索 | 98.验证二叉搜索树

想象一下,当你将其中一棵覆盖到另一棵之上时,两棵树上的一些节点将会重叠(而另一些不会)。合并的规则是:如果两个节点重叠,那么将这两个节点的值相加作为合并后节点的新值;否则,不为 null 的节点将直接作为新二叉树的节点。你需要在 BST 中找到节点值等于 val 的节点。给你一个二叉树的根节点 root ,判断其是否是一个有效的二叉搜索树。给定二叉搜索树(BST)的根节点 root 和一个整数值 val。节点的左子树只包含 小于 当前节点的数。节点的右子树只包含 大于 当前节点的数。返回合并后的二叉树。

2023-04-03 10:56:19 96

原创 【代码随想录刷题笔记 Day 18】513.找树左下角的值 | 112. 路径总和 |113.路径总和ii | 106.从中序与后序遍历序列构造二叉树 |

判断该树中是否存在 根节点到叶子节点 的路径,这条路径上所有节点值相加等于目标和 targetSum。给定两个整数数组 inorder 和 postorder ,其中 inorder 是二叉树的中序遍历, postorder 是同一棵树的后序遍历,请你构造并返回这颗 二叉树。给定两个整数数组 preorder 和 inorder ,其中 preorder 是二叉树的先序遍历, inorder 是同一棵树的中序遍历,请构造二叉树并返回其根节点。路径总和等于给定目标和的路径。假设二叉树中至少有一个节点。

2023-04-01 14:50:19 110

原创 【代码随想录刷题笔记 Day 17】110.平衡二叉树 | 257. 二叉树的所有路径 | 404.左叶子之和

题目给定一个二叉树,判断它是否是高度平衡的二叉树。本题中,一棵高度平衡二叉树定义为:一个二叉树每个节点的左右两个子树的高度差的绝对值不超过 1。示例。

2023-03-31 10:11:54 101

原创 【代码随想录刷题笔记 Day 16】104.二叉树的最大深度 | 111.二叉树的最小深度 | 222.完全二叉树的节点个数

题目给定一个二叉树,找出其最大深度。二叉树的深度为根节点到最远叶子节点的最长路径上的节点数。叶子节点是指没有子节点的节点。示例。

2023-03-30 10:09:47 65

原创 【代码随想录刷题笔记 Day 14】 层序遍历 |226.翻转二叉树 | 101. 对称二叉树

(即逐层地,从左到右访问所有节点)。,翻转这棵二叉树,并返回其根节点。给你一棵二叉树的根节点。给你一个二叉树的根节点。, 检查它是否轴对称。

2023-03-29 15:46:41 97

原创 代码随想录day14|理论基础|递归遍历| 迭代遍历 |

Leetcode

2023-03-28 10:06:26 66

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除