- 博客(46)
- 收藏
- 关注
原创 代码随想录算法训练营第五十三天|1143.最长公共子序列 、 1035.不相交的线、 53. 最大子序和
给定两个字符串text1和text2,返回这两个字符串的最长的长度。如果不存在,返回0。一个字符串的是指这样一个新的字符串:它是由原字符串在不改变字符的相对顺序的情况下删除某些字符(也可以不删除任何字符)后组成的新字符串。例如,"ace"是"abcde"的子序列,但"aec"不是"abcde"的子序列。两个字符串的是这两个字符串所共同拥有的子序列。
2024-04-28 18:01:59
523
2
原创 代码随想录算法训练营第五十二天| 300.最长递增子序列 、 674. 最长连续递增序列、718. 最长重复子数组
给你一个整数数组nums,找到其中最长严格递增子序列的长度。是由数组派生而来的序列,删除(或不删除)数组中的元素而不改变其余元素的顺序。例如,[3,6,2,7]是数组的子序列。
2024-04-26 21:39:34
406
2
原创 代码随想录算法训练营第五十一天| 714.买卖股票的最佳时机含手续费、 309.最佳买卖股票时机含冷冻期
给定一个整数数组prices,其中prices[i]表示第i天的股票价格;整数fee代表了交易股票的手续费用。你可以无限次地完成交易,但是你每笔交易都需要付手续费。如果你已经购买了一个股票,在卖出它之前你就不能再继续购买股票了。返回获得利润的最大值。这里的一笔交易指买入持有并卖出股票的整个过程,每笔交易你只需要为支付一次手续费。
2024-04-25 14:22:39
495
2
原创 代码随想录算法训练营第五十天| 123.买卖股票的最佳时机III、 188.买卖股票的最佳时机IV
给定一个数组,它的第i个元素是一支给定的股票在第i天的价格。设计一个算法来计算你所能获取的最大利润。你最多可以完成交易。你不能同时参与多笔交易(你必须在再次购买前出售掉之前的股票)。
2024-04-24 13:22:49
404
2
原创 代码随想录算法训练营第四十九天| 121. 买卖股票的最佳时机、 122.买卖股票的最佳时机II
给定一个数组prices,它的第i个元素prices[i]表示一支给定股票第i天的价格。你只能选择买入这只股票,并选择在卖出该股票。设计一个算法来计算你所能获取的最大利润。返回你可以从这笔交易中获取的最大利润。如果你不能获取任何利润,返回0。
2024-04-23 15:29:40
193
原创 代码随想录算法训练营第四十八天| 198.打家劫舍、213.打家劫舍II、337.打家劫舍III
你是一个专业的小偷,计划偷窃沿街的房屋。每间房内都藏有一定的现金,影响你偷窃的唯一制约因素就是相邻的房屋装有相互连通的防盗系统,。给定一个代表每个房屋存放金额的非负整数数组,计算你,一夜之内能够偷窃到的最高金额。
2024-04-22 21:21:31
536
原创 代码随想录算法训练营第四十六天| 139.单词拆分
给你一个字符串s和一个字符串列表wordDict作为字典。如果可以利用字典中出现的一个或多个单词拼接出s则返回true。不要求字典中出现的单词全部都使用,并且字典中的单词可以重复使用。
2024-04-20 19:07:50
262
原创 代码随想录算法训练营第四十五天| 322. 零钱兑换 、279.完全平方数
给你一个整数数组coins,表示不同面额的硬币;以及一个整数amount,表示总金额。计算并返回可以凑成总金额所需的。如果没有任何一种硬币组合能组成总金额,返回-1。你可以认为每种硬币的数量是无限的。
2024-04-19 15:10:01
343
原创 代码随想录算法训练营第四十四天| 518. 零钱兑换 II 377. 组合总和 Ⅳ
给你一个整数数组coins表示不同面额的硬币,另给一个整数amount表示总金额。请你计算并返回可以凑成总金额的硬币组合数。如果任何硬币组合都无法凑出总金额,返回0。假设每一种面额的硬币有无限个。题目数据保证结果符合 32 位带符号整数。
2024-04-18 20:35:21
485
原创 代码随想录算法训练营第四十三天| 1049. 最后一块石头的重量 II 、 494. 目标和、 474.一和零
有一堆石头,用整数数组stones表示。其中stones[i]表示第i块石头的重量。每一回合,从中选出,然后将它们一起粉碎。假设石头的重量分别为x和y,且x <= y。x == yx!= yxyy-x最后,石头。返回此石头。如果没有石头剩下,就返回0。
2024-04-17 18:43:18
394
原创 代码随想录算法训练营第四十一天|343. 整数拆分、96.不同的二叉搜索树
给定一个正整数n,将其拆分为k个的和(k >= 2),并使这些整数的乘积最大化。返回你可以获得的最大乘积。
2024-04-15 14:12:31
288
原创 代码随想录算法训练营第三十九天| 62.不同路径、63. 不同路径 II
一个机器人位于一个m x n网格的左上角 (起始点在下图中标记为 “Start” )。机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角(在下图中标记为 “Finish” )。问总共有多少条不同的路径?一个机器人位于一个m x n网格的左上角 (起始点在下图中标记为 “Start” )。机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角(在下图中标记为 “Finish”)现在考虑网格中有障碍物。那么从左上角到右下角将会有多少条不同的路径?网格中的障碍物和空位置分别用1和0来表示。
2024-04-13 13:06:14
753
原创 代码随想录算法训练营第三十八天|509. 斐波那契数、 70. 爬楼梯、746. 使用最小花费爬楼梯
(通常用F(n)表示)形成的序列称为。该数列由0和1开始,后面的每一项数字都是前面两项数字的和。也就是:F(n) = F(n - 1) + F(n - 2),其中 n > 1给定n,请计算F(n)。
2024-04-12 14:44:57
301
原创 代码随想录算法训练营第三十六天| 435. 无重叠区间、 763.划分字母区间、56. 合并区间
给定一个区间的集合intervals,其中。返回需要移除区间的最小数量,使剩余区间互不重叠。
2024-04-10 15:07:18
477
原创 代码随想录算法训练营第三十五天| 860.柠檬水找零、 406.根据身高重建队列、 452. 用最少数量的箭引爆气球
在柠檬水摊上,每一杯柠檬水的售价为5美元。顾客排队购买你的产品,(按账单bills支付的顺序)一次购买一杯。每位顾客只买一杯柠檬水,然后向你付5美元、10美元或20美元。你必须给每个顾客正确找零,也就是说净交易是每位顾客向你支付5美元。注意,一开始你手头没有任何零钱。给你一个整数数组bills,其中bills[i]是第i位顾客付的账。如果你能给每位顾客正确找零,返回true,否则返回false。
2024-04-09 22:39:50
605
原创 代码随想录算法训练营第三十四天| 1005.K次取反后最大化的数组和、134. 加油站、 135. 分发糖果
给你一个整数数组nums和一个整数kinums[i]-nums[i]重复这个过程恰好k次。可以多次选择同一个下标i。以这种方式修改数组后,返回数组。
2024-04-09 19:43:39
395
原创 代码随想录算法训练营第三十二天| 122.买卖股票的最佳时机II、55. 跳跃游戏、 45.跳跃游戏II
给你一个整数数组prices,其中prices[i]表示某支股票第i天的价格。在每一天,你可以决定是否购买和/或出售股票。你在任何时候只能持有股票。你也可以先购买,然后在出售。返回你能获得的利润。
2024-04-06 15:14:12
474
原创 代码随想录算法训练营第三十一天| 455.分发饼干、 376. 摆动序列 、53. 最大子序和
假设你是一位很棒的家长,想要给你的孩子们一些小饼干。但是,每个孩子最多只能给一块饼干。对每个孩子i,都有一个胃口值g[i],这是能让孩子们满足胃口的饼干的最小尺寸;并且每块饼干j,都有一个尺寸s[j]。如果,我们可以将这个饼干j分配给孩子i,这个孩子会得到满足。你的目标是尽可能满足越多数量的孩子,并输出这个最大数值。
2024-04-05 17:26:34
358
原创 代码随想录算法训练营第三十天| 332.重新安排行程、 51. N皇后 、 37. 解数独
给你一份航线列表tickets,其中表示飞机出发和降落的机场地点。请你对该行程进行重新规划排序。所有这些机票都属于一个从JFK(肯尼迪国际机场)出发的先生,所以该行程必须从JFK开始。如果存在多种有效的行程,请你按字典排序返回最小的行程组合。假定所有机票至少存在一种合理的行程。且所有的机票 必须都用一次 且 只能用一次。
2024-04-05 12:09:40
273
原创 代码随想录算法训练营第二十九天| 491.递增子序列、 46.全排列 、 47.全排列 II
给你一个整数数组nums,找出并返回所有该数组中不同的递增子序列,递增子序列中。你可以按返回答案。数组中可能含有重复元素,如出现两个整数相等,也可以视作递增序列的一种特殊情况。
2024-04-03 15:53:15
285
原创 代码随想录算法训练营第二十八天| 93.复原IP地址、 78.子集 、 90.子集II
正好由四个整数(每个整数位于0到255之间组成,且不能含有前导0),整数之间用'.'分隔。给定一个只包含数字的字符串s,用以表示一个 IP 地址,返回所有可能的,这些地址可以通过在s中插入'.'来形成。你重新排序或删除s中的任何数字。你可以按顺序返回答案。
2024-04-02 17:43:08
300
原创 代码随想录算法训练营第二十七天| 39. 组合总和 、 40.组合总和II 、 131.分割回文串
给你一个的整数数组candidates和一个目标整数target,找出candidates中可以使数字和为目标数target的 所有,并以列表形式返回。你可以按返回这些组合。candidates中的数字可以。如果至少一个数字的被选数量不同,则两种组合是不同的。对于给定的输入,保证和为target的不同组合数少于150个。
2024-04-01 19:42:05
448
原创 代码随想录算法训练营第二十五天| 216.组合总和III、17.电话号码的字母组合
找出所有相加之和为n的k返回所有可能的有效组合的列表。该列表不能包含相同的组合两次,组合可以以任何顺序返回。
2024-03-30 15:33:27
286
原创 代码随想录算法训练营第二十三天| 669. 修剪二叉搜索树 、 108.将有序数组转换为二叉搜索树 、 538.把二叉搜索树转换为累加树
给你二叉搜索树的根节点root,同时给定最小边界low和最大边界high。通过修剪二叉搜索树,使得所有节点的值在中。修剪树改变保留在树中的元素的相对结构 (即,如果没有被移除,原有的父代子代关系都应当保留)。可以证明,存在。所以结果应当返回修剪好的二叉搜索树的新的根节点。注意,根节点可能会根据给定的边界发生改变。
2024-03-28 16:25:28
521
原创 代码随想录算法训练营第二十二天| 235. 二叉搜索树的最近公共祖先、 701.二叉搜索树中的插入操作 、450.删除二叉搜索树中的节点
给定一个二叉搜索树, 找到该树中两个指定节点的最近公共祖先。中最近公共祖先的定义为:“对于有根树 T 的两个结点 p、q,最近公共祖先表示为一个结点 x,满足 x 是 p、q 的祖先且 x 的深度尽可能大(例如,给定如下二叉搜索树: root = [6,2,8,0,4,7,9,null,null,3,5]
2024-03-27 16:04:15
585
原创 代码随想录算法训练营第二十一天| 530.二叉搜索树的最小绝对差、501.二叉搜索树中的众数 、236. 二叉树的最近公共祖先
给你一个二叉搜索树的根节点root,返回。差值是一个正数,其数值等于两值之差的绝对值。
2024-03-26 16:32:19
300
原创 代码随想录算法训练营第二十天| 654. 最大二叉树 、 617.合并二叉树 、700.二叉搜索树中的搜索、98.验证二叉搜索树
给定一个不重复的整数数组nums。可以用下面的算法从numsnums返回 nums构建的最大二叉树。
2024-03-25 18:51:12
455
1
原创 代码随想录算法训练营第十八天| 513找树左下角的值 、112. 路径总和、106.从中序与后序遍历序列构造二叉树
给定一个二叉树的root,请找出该二叉树的节点的值。假设二叉树中至少有一个节点。
2024-03-23 19:17:46
350
1
原创 代码随想录算法训练营第十七天| 110.平衡二叉树 、 257. 二叉树的所有路径、404.左叶子之和
给定一个二叉树,判断它是否是 平衡二叉树。
2024-03-22 16:31:21
338
1
原创 代码随想录算法训练营第十六天|104.二叉树的最大深度 、 111二叉树的最小深度、222.完全二叉树的节点个数
给定一个二叉树root,返回其最大深度。二叉树的是指从根节点到最远叶子节点的最长路径上的节点数。
2024-03-21 15:59:11
249
1
原创 代码随想录算法训练营第十三天| 239. 滑动窗口最大值 、 347.前 K 个高频元素
给你一个整数数组nums,有一个大小为k的滑动窗口从数组的最左侧移动到数组的最右侧。你只可以看到在滑动窗口内的k个数字。滑动窗口每次只向右移动一位。返回滑动窗口中的最大值。
2024-03-18 20:32:16
353
原创 代码随想录算法训练营第十一天| 20. 有效的括号 、 1047. 删除字符串中的所有相邻重复项、 150. 逆波兰表达式求值
给定一个只包括'('')''{''}''['']'的字符串s,判断字符串是否有效。
2024-03-16 13:46:51
335
1
原创 代码随想录算法训练营第九天| 28. 实现 strStr()、459.重复的子字符串
给你两个字符串haystack和needle,请你在haystack字符串中找出needle字符串的第一个匹配项的下标(下标从 0 开始)。如果needle不是haystack的一部分,则返回-1。
2024-03-14 15:53:36
223
1
原创 代码随想录算法训练营第八天| 344.反转字符串、541. 反转字符串II、卡码网:54.替换数字、151.翻转字符串里的单词、卡码网:55.右旋转字符串
编写一个函数,其作用是将输入的字符串反转过来。输入字符串以字符数组s的形式给出。不要给另外的数组分配额外的空间,你必须、使用 O(1) 的额外空间解决这一问题。
2024-03-13 19:12:00
757
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅