自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 代码随想录算法训练营|day48

空间优化:可以看到第i天状态只依赖于第i-1天的状态,因此只需要记录前一天状态即可。因为不限制交易次数,故只要今天股价比昨天高,就交易。dp[i][1] 表示第i天。dp[i][1] 表示第i天。所以在当天是买入状态时,持有的最大现金为。较上题多了条件:股票可以进行多次买卖。贪心:在历史最低点买入,最高点卖出。dp[i][0] 表示第i天。dp[i][0] 表示第i天。本题中股票只能买卖一次。

2024-03-02 12:30:18 638

原创 代码随想录算法训练营|day47

上题扩展:房屋是环状的,意味着第一个房子和最后一个房子不能同时偷,故求解max(不偷第一个房子,不偷最后一个房子)因为抢劫到的最高金额只与前两间房屋有关,故采用滚动数组优化。,则当前节点的左右孩子可偷可不偷,取两种可能性的最大值。后序遍历:通过递归函数的返回值进行下一步求解。,则当前节点的左右孩子都不能偷;家及之前所能获取的最大金额。

2024-03-01 11:09:41 802

原创 代码随想录算法训练营|day46

1、0/1背包:外循环nums,内循环targettarget倒序且target从nums[i]开始题目类型转移方程416.分割等和子集存在问题(bool)1049.最后一块石头的重量II最值问题474.一和零最值问题494.目标和组合问题2、完全背包:(1)求总和嵌套循环内外顺序不影响外循环nums,内循环targettarget正序且target从nums[i]开始外循环target,内循环numstarget正序且题目类型转移方程322.零钱兑换最值问题。

2024-02-29 14:07:32 734

原创 代码随想录算法训练营|day45

分清楚背包问题类型,背包和物品分别是啥,求解很容易先遍历物品,后遍历背包:背包容量肯定要大于等于物品,小于等于最大背包容量(背包容量从物品起先遍历背包,后遍历物品:物品必须能装进背包里(物品小于背包容量。

2024-02-28 11:52:10 538

原创 代码随想录算法训练营|day44

01背包为了保证每个物品只添加一次,遍历背包容量时(内循环)按照从大到小的顺序;i++) { // 遍历物品j--) { // 遍历背包容量完全背包物品是可以添加多次,背包容量按从小到大顺序遍历(内外循环嵌套顺序无影响)// 先遍历物品,再遍历背包i++) { // 遍历物品j++) { // 遍历背包容量遍历顺序很关键:求组合数:外层for遍历物品,内层for遍历背包。求排列数:外层for遍历背包,内层for遍历物品。

2024-02-27 10:32:28 539

原创 代码随想录算法训练营|day43

没得选和可选可不选。

2024-02-26 14:33:55 1095

原创 代码随想录算法训练营|day42

初始化:dp[0]=true,表示和为0,不需要选取任何元素,为真。如果和为奇数或者数组中最大值大于。该问题转换为在数组中找到元素和。即可,为0/1背包问题,表示是否存在子集和为i。无法分成两个等和子集。

2024-02-24 15:02:16 693

原创 代码随想录算法训练营|day40

对于一棵二叉搜索树,左子树小于右子树,因此,遍历1到n范围内的任意数字i,将其作为根节点,递归构建左子树。边界情况:对于一个正整数将其拆分为至少两个正整数之和,dp[0],dp[1]没有意义。边界情况:空节点或只有一个根节点只有一种情况,,记录遍历过程中第i轮的最大值dp[i]时,相当于重复前面的遍历过程,所以。点构建BST树的所有情况。得到的最大乘积,对于。

2024-02-23 09:38:49 812

原创 代码随想录算法训练营|day39

今天的题还好哇!

2024-02-22 08:27:18 1219

原创 代码随想录算法训练营|day38

动态规划基础挺容易理解的。

2024-02-21 09:56:25 502

原创 代码随想录算法训练营|day37

监控二叉树只能抄题解😭

2024-02-20 12:23:36 536

原创 代码随想录算法训练营|day36

思路猜对一半一半的,细节思考不到。

2024-02-19 11:27:53 572

原创 go内置库函数实现client与server数据的发送接收

客户端持续写入数据,直到输入exit退出,服务端读取数据并打印

2024-02-18 09:18:12 801

原创 代码随想录算法训练营|day34

如果顾客付20元,自己至少有一张5元和一张10元,five–,ten–;或者自己至少有3张5元,five-=3;如果顾客付10元,自己至少有一张5元,five–,ten++;贪心:对气球右边界排序,初始时最大右边界为points[0][1],就能被箭射穿,否则更新最大右边界,箭个数++如果顾客付5元,直接five++

2024-02-17 11:15:58 1018

原创 代码随想录算法训练营|day33

从右向左遍历,若左边比右边大,糖果值取max(当前值,右边孩子糖果值+1)保证每人有一个糖果;从左向右遍历,若右边比左边大,糖果值+1;如果sum(gas) > sum(cost),证明不可能跑完全程;,将nums[0]变为相反数,求和,,遍历数组将其变为正数;小于0,证明不可能为起点,第一个变化位置处取值大。

2024-02-16 10:46:07 764

原创 代码随想录算法训练营|day32

从i位置出发,dp[i] = nums[i] + i;不从i位置出发dp[i] = dp[i - 1]当前位置为i时,下一跳的可扩展边界为j,如果下一跳位置从未到达过,dp[j]=dp[i]+1。(1)贪心:若当前位置是能走到的最远位置离,count++,更新下一个能走到的最远位置。若下一跳能跳到的最远位置为当前位置,不能往前走了。dp[i]:[0,i]范围内任意位置,下一跳可以跳到的最远位置。若数组长度大于1,但是nums[0] == 0,无法继续前进;的最小次数 + 1,当前位置的最小跳跃次数)

2024-02-15 12:06:13 541

原创 代码随想录算法训练营|day31

算法学习对代码理解帮助很大,开心。

2024-02-14 09:56:44 570

原创 十大排序算法

参考。

2024-02-12 10:58:56 1513

原创 代码随想录算法训练营|day30

每次取map中第一个dest访问,将其作为新的src,每访问一条src->dest,删除该记录。判断当前值是否有效:因为每行只选取一个位置,故只需判断列和正斜、反斜方向是否有皇后。如果访问的src没有dest了,将当前节点加入结果集,并沿栈返回。先对tickets排序,used记录当前车票是否被使用。row控制递归深度,for循环控制列,进而确定当前位置。若车票使用完并找到路径,返回,否则回溯查找路径。当前位置有效性判断:行、列、九宫格数字不重复。如果当前位置能放数字,且有效,递归,否则回溯。

2024-02-09 12:34:43 670

原创 代码随想录算法训练营|day29

常做常新是怎么回事😢代码随想录图示帮助好大。

2024-02-07 10:33:11 570

原创 代码随想录算法训练营|day28

同层去重:used[i - 1] = false,说明是从前一个元素回溯回来的,若used[i - 1] = true说明是进入下一个递归取值。如果当前字符串满足要求,递归调用下一层。作为下次递归的初始位置。,要求结果集合不能重复,需要去重。加入结果,否则提前回溯。相较于上题子集问题,数组。子集相当于找树的节点,为避免重复取值,需要。

2024-02-06 12:22:27 564

原创 代码随想录算法训练营|day27

组合、切割、子集、排列、棋盘:N皇后,解数独等等学习go语言map实现set基本能实现回溯,代码随想录yyds。

2024-02-05 10:29:57 944

原创 代码随想录算法训练营|day25

半知半解🤔。

2024-02-03 09:32:45 556

原创 代码随想录算法训练营|day24

循环嵌入递归,循序渐进。感谢代码随想录训练营。

2024-02-02 10:09:36 730

原创 代码随想录算法训练营|day23

总代码随想录力扣学习。

2024-02-01 10:14:11 586

原创 代码随想录算法训练营|day22

二叉搜索树中的插入操作看题目要求以为得旋转树,去瞅瞅平衡二叉树旋转树那部分对于二叉树的理解终于到了看山不是山的境界了。

2024-01-31 15:17:02 545

原创 代码随想录算法训练营|day21

若root是p、q的最近公共祖先包括三种情况:节点p、q分别在root的左、右子树;类似上题:需要辅助变量,preNode记录前一个节点,用于比较数值;count记录当前节点值出现次数;maxCount记录遍历到当前节点时众数的出现次数。如果当前count == maxCount,结果中追加(有多个众数);如果count > maxCount,清空结果并追加当前节点值。二叉树自底向上查找,后序遍历,可以根据左右子树的返回值,处理中间节点。二叉搜索树前序遍历,节点值是有序排列的。遍历过程中求解最小值。

2024-01-30 10:32:35 566 1

原创 代码随想录算法训练营|day20

搜索整棵二叉树,递归有无返回值,取决于是否需要对其进行处理单调栈。

2024-01-29 15:56:02 924

原创 代码随想录算法训练营|day15二叉树相关推荐

树,递归,层序迭代一个套路走完所有题大佬递归方法太秀了!必须码住。

2024-01-28 18:54:58 437 1

原创 代码随想录算法训练营|day18

递归求解通常需要公共变量提取,创建无返回值函数,或者返回值为bool注意切片扩容,导致结果出错,切片深拷贝、浅拷贝。

2024-01-28 09:16:39 803 1

原创 代码随想录算法训练营|day17

感觉val是包括了二叉树左节点就是叶子节点,和左节点不是叶子节点两种情况,平衡二叉树:节点的左右子树的高度差小于1。如果遇到叶子节点,添加路径。(1)递归:前序遍历。

2024-01-26 22:33:39 725 1

原创 代码随想录算法训练营|day15

跟着大佬学习效率还是高的,递归、迭代方法基本理解!

2024-01-25 19:18:08 404

原创 代码随想录算法训练营|day16

今天做起来轻松多了,开心。

2024-01-25 16:49:41 573

原创 代码随想录算法训练营|day14

递归和迭代都是有解题套路的!多思考问问题。

2024-01-23 16:41:26 842 1

原创 代码随想录算法训练营|day13

看大佬们的题解和代码好清晰,慢慢进步吧。

2024-01-22 17:39:56 504

原创 代码随想录算法训练营|day11

判断成对出现的问题,可以考虑栈。

2024-01-20 15:50:14 473

原创 代码随想录算法训练营|day10

照着题解写的,但也记录一下。

2024-01-19 19:43:24 352 1

原创 代码随想录算法训练营|day9

KMP算法还得再学习理解。next数组记录了模式串子串中最长相等前后缀长度,减少了与文本串不匹配时的循环次数。

2024-01-19 12:43:53 799 1

原创 代码随想录算法训练营|day8

go语言基础知识欠缺,学习常用库函数。

2024-01-17 18:07:27 616

原创 代码随想录算法训练营|day7

想明白还是简单的,多总结归纳,不着急。

2024-01-16 13:28:14 448 1

空空如也

空空如也

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

TA关注的人

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