自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 代码随想录算法训练营总结

等数据结构,其实本质内部都是一种数组,只是用了拉链法或者开放寻址法。最近这段时间在公司实习,可能活太多了,等后面得把刷力扣的习惯拾起来。贪心和动态规划,对于题意的理解得多学习多转换。状态方程的写法,还是转换的问题。可以参考我之前的写过一篇文章。如何将主问题分解为多个子问题。我觉得关键就是去重的做法。卫星节点,双指针算法。

2024-03-19 21:50:38 347

原创 代码随想录算法训练营第五十九天|84.柱状图中最大的矩形

【代码】代码随想录算法训练营第五十九天|84.柱状图中最大的矩形。

2024-03-14 21:09:12 441

原创 代码随想录算法训练营第五十八天|503.下一个更大元素II、42.接雨水

单调栈:维护从栈底到栈头是从大到小的顺序,弹出去一个,那么当来一个时候,如果比top大的话,那么这个top肯定是中间,因为弹出top之后,下一个top肯定大于该top的,这样的一定就是凹槽!思路:循环数组,相当于后面的元素可以看到前面的元素,那么我们直接把整个数组复制到后面去,这样两倍处理,那么不就可以让后面的元素看到前面的元素了?

2024-03-13 22:32:46 478

原创 代码随想录算法训练营第五十七天|739.每日温度、496.下一个更大元素I

思路:还是和上一道题的思路区别不大,但是关键还是转换到哈希表,综合性还是蛮大的!使用栈这种数据结构来维持一个单调的序列!暴搜法,时间复杂度是O(n^2)

2024-03-12 22:34:59 484

原创 代码随想录算法训练营第五十六天|647. 回文子串、516.最长回文子序列

思路:用二维矩阵来表示,数组第i个位置字符和第j个位置字符,如果他们相等,那么只要子串也是回文,加这两个位置也是回文的!下图对于理解十分重要,然后就是要确定遍历方式,因为我们要得到。思路:把一维的问题,转变成二维dp数组,这个思路值得学习!,故就要采用从下到上的遍历i,从左到右遍历j!这是我最开始的思路,但是感觉死活弄不出来!

2024-03-11 11:46:19 341

原创 代码随想录算法训练营第五十五天|583.两个字符串的删除操作、72.编辑距离

思路:删除操作其实就是选或者不选的问题,如果该位置两个字符串相等,则都可以选,不用删除。如果不相等的时候,则要讨论三种情况,1.删除t中的字符,不删除s中的字符;2.不删除t中的字符,删除s中的字符;3.两个字符串中的字符都删除!,本来就没有考虑word1[i-1],只考虑word2[j-1]的,故只需要删除一个就行了,另外一个同理!思路:最开始一脸懵逼,因为有什么插入,替换操作,不知道怎么解!

2024-03-09 12:07:58 368

原创 代码随想录算法训练营第五十四天|392.判断子序列、115.不同的子序列

这个就要讨论递推公式了,遍历到t和s的最后一个位置,是相等的,那么此时dp[i][j]=dp[i-1][j-1],但是如果此时最后一个位置不相等呢?初始化的问题,当t字符串为空的时候,s字符串有东西的话,都不可能匹配上,则为0,但是t字符串不为空,s字符串为空的时候,则为1,如果t和s的字符串都为空,那么这个时候必然为1!思路:判断子序列的问题,其实与最大公共子序列的问题是一样的,所以基本上写出来是一样的,但是今天又犯了一个错误,对于非连续子序列,不仅要在相等的时候进行更新,而且不等的时候也要更新!

2024-03-08 11:37:57 327

原创 代码随想录算法训练营第五十三天|1143.最长公共子序列、1035.不相交的线、53.最大子数组和

依然是利用二维数组,但是这个时候要注意区分相等与不相等的情况,对于连续的而言,如果这两个位置不等,那么dp数组的这个位置一定是为0的,(其实这里也可以联系到最后一题,如果不能连续起来,那么dp不动,相当于以该点为起始位置,重新开始,而因为最后一题的为了记录其值,所以以这个地方为起点,要把该值加入进去!个位置的连续数组和是多少,那么第一种更新的情况肯定是前i-1数组的大小+当前这个位置的大小,另外一种是若前i-1数组的大小为负的,那么加上当前的位置的数,会变得更小,所以此时不如从当前节点重新开始!

2024-03-07 11:29:32 334

原创 代码随想录算法训练营第五十二天|300.最长递增子序列、674.最长连续递增序列、718.最长重复子数组

对于子序列问题,如果不连续的情况,即变成一个范围内的问题,加入一个循环即可!对于两个数组,比较的问题,将dp数组变成二维的,一个维度表示一个数组,dp数组的定义就是两个数组该位置相等!思路:其实这道题比上面一道题更加容易,定义dp数组的含义为每个位置前含有最大的连续子序列,一旦断了,下一个位置的值就是1,只有其自己,更新每个位置的dp值,选择更大的进行更新!借用代码随想录的一句总结,连续与非连续的问题,即是一个是与前。思路:初始化一个二维数组,其中一维表示为。中的某个数,就可以将其更新。

2024-03-06 15:56:53 357

原创 代码随想录算法训练营第五十一天|309.买卖股票的最佳时机含冷冻期、714.买卖股票的最佳时机含手续费

思路:看到这道题,可能会很懵逼,但是记住动态规划的题目,一定要把状态列清楚,就十分清晰了!思路:这道题与买卖股票的最佳时机II没什么太大的区别!注意手续费是在哪个时候扣除!动态规划的买卖股票的问题,在写代码之前请把几种情况分清楚!

2024-03-05 10:31:45 317

原创 代码随想录算法训练营第五十天|123.买卖股票的最佳时机III、188. 买卖股票的最佳时机 IV

思路:这道题区分于前两道题,前两道题,分别是可进行一次交易和可进行无数次交易,这道题是可进行两次交易,但共同点是手中仅能握有一只股票!首先确定dp数组有几种状态,五种状态,不买入,第一次买入,第一次卖出,第二次买入,第二次卖出。思路:其实这道题的思路与上一道本质没啥区别,思路也差不多,就是交易次数从固定具体的次数变成了k次!数组,第一个参数是表示第几天的股票,第二个表示买入的次数,然后进行初始化第一天的数据,因为都是从。其实就是把一些重复初始化的代码给删掉了,但是我还更加倾向写第一种,每个思路都十分清晰!

2024-03-04 10:48:52 484

原创 代码随想录算法训练营第四十八天|121. 买卖股票的最佳时机、122. 买卖股票的最佳时机II

思路:这道题与上一道题的区别就是能否多次买卖的问题,上一道题只能买入一只,然后在某一天卖出来,其实就是求的区间的两个值的最大差值,但是这个是能够多次购买,即能够累加,把买入的一天,到卖出的一天之间能赚的钱全部累加到一起!思路:对于本道题,你首先要理解清楚首先是欠钱购买,然后要更新每一天的时候,要判断两件事:第一件事:此时还要不要继续购买新的股票,即。第二件事:价最高的地方卖出,显然是赚的最多的,故有第二个递推公式。即要么是前一天的时候卖出最合适,要么就是当天卖出的价格+前一天持有时候所欠的钱!

2024-03-02 16:58:04 506

原创 代码随想录算法训练营第四十七天|198.打家劫舍、213.打家劫舍II、337.打家劫舍III

思路:最开始做的时候,有点被前几天的背包问题代入进去了,其实这道题是一个经典的动态规划的问题,其每个位置的状态与前面两个位置都有关系,其实大家可以联系一下。思路:对于树形dp而言,dp数组的含义是每一层的两个数,第一个值表示选择该节点,另外一个值表示不选择该节点,还是要利用递归来求解。这道题,本质的思路完全一样,每个位置,我只关心在该位置前两个位置的大小,与其他无关!思路:这道题的关键点将问题分成两个问题,分别求出最大的值,然后返回最大值!是必须要进行初始化的!

2024-03-01 15:12:57 343

原创 代码随想录算法训练营第四十六天|139.单词拆分、56.携带矿石资源

看作为背包容量,从字符串中获取物品,刚好满足背包容量的过程,因为可以从字符串中多次取值,相当于物品的数量是不限制,这就是一个完全背包的问题!这个题有个关键点,在于遍历物品的时候,分为两部分,一部分是前。个部分,判断这部分是否是物品中的东西,另外一部分就是判断剩下这部分是否是物品中的东西,相当于把一个子串也要拆分!一个大的串,就是多个子串组成,并且这些子串还是有顺序的!思路:将每个类型的数量进行展开,最后变成01背包问题,但是展开的时候,要区分,应该在01遍历的过程中,这十分重要!

2024-02-29 11:15:36 491

原创 代码随想录算法训练营第四十五天|57. 爬楼梯、322.零钱兑换、279.完全平方数

思路:一定要把背包和物品分清楚,背包容量就是我们要达到的值,每次取的数就是完全平方数的根号,最开始我陷入怎么去判断这个值是否是完全平方数的问题,我们从。思路:这就是一道完全背包的排列问题,首先完全背包的问题,首先确定从前往后遍历,第二个排列问题,应该先遍历背包容量,再遍历物品,因为这样就可以保证出现。思路:这道题的关键点在于选择合适的初始值!怎么样去判断是否找到了合适的金额!得到的数肯定就是完全平方数!就是这个完全平方数,由。

2024-02-28 11:33:44 417

原创 代码随想录算法训练营第四十四天|52. 携带研究材料、518.零钱兑换II、377.组合总和IV

其实画完图,就能感受到这两种遍历方式的区别,一种是从后往前,这个时候通常前面的还没更新,意思是前面的还没取呢,但是如果从前往后遍历,取同一个物品的时候,后面再取这件物品的时候,会加上这一次已经取过这个物品,这样的话,相当于重复取物品了!思路:我们只需要从硬币中取出满足条件的硬币就满足条件了,就是一个组合问题,对于完全背包的问题,先遍历物品,再遍历背包,例如。思路:我们只需要从硬币中取出满足条件的硬币就满足条件了,就是一个排列问题,对于完全背包的问题,先遍历背包,再遍历物品!空间复杂度:O(n)

2024-02-27 15:54:04 379

原创 代码随想录算法训练营第四十三天|1049.最后一块石头的重量II、494.目标和、474.一和零

思路:将石头分为两堆,他们两个的重量最接近,碰撞的话,此时剩下的重量最小,故此时想到动态规划,但是我个人感觉很容易被陷入本道题的一些条件,比如说。思路:这道题要将目标和进行分解,分解成一个小数和一个大数,但是这两个数的和是一定的,即。若不能分解成left,那么可知是不可能通过加减运算得到结果的。思路:二维的01背包问题,统计每个字符串中的0和1,然后利用递推公式进行。,想着要去区分每次拿出去的顺序什么的。这道题的关键是生成的。的含义是能从石头堆中取出的最靠近。,这样的一个关系,那么。

2024-02-26 21:43:43 386

原创 代码随想录算法训练营第四十一天|46.携带研究材料、416.分割等和子集

表示装了i件物品,用了j这么大的空间,里面的最大价值是多少。递推公式:分为几种情况,一种是能装下,但是不一定装进去,价值比原来的大,故此时采用。其i的含义是什么呢?物品的数量,j是背包的容量,思路:这是一道01背包的问题,首先考虑。,另外一种情况是装不下了,那么直接等于。遍历顺序:我感觉这里值得好好思考!背包问题,还得总结,有点难度的!是肯定的,另外一个问题,如果说。

2024-02-25 22:12:04 421

原创 代码随想录算法训练营第四十天|343.整数拆分、96.不同的二叉搜索树

2.递推公式,因为为二叉搜索树,故可以通过中间节点值的大小,中间的值的大小决定了左右两个子树节点的数量,故递推公式为。是毫无意义的,第四点如何确定遍历顺序,首先外层循环一定是从3开始遍历,一直遍历到n这个位置,内层循环是从1开始拆分到i这么大!这个数,其拆分之后数组的最大值是什么,那么接下来的问题是怎么确定递推公式,这个地方很值得思考一下,那么我们一定是将。就可以了,其实想想看确实是乘法的话,每个值的权重差不多乘起来应该是最大的!的说法,根据几个连续的数的乘积一定是最大的,故我们选择拆分的数从。

2024-02-25 15:14:52 322

原创 代码随想录算法训练营第三十九天|62.不同路径、63.不同路径II

思路:大体思路和不同路径差不多,只要注意一旦在路径上面遇到障碍了,那么无论是从上往下这条路径还是从左往右走的路径都是死的,所以这个时候压根不要加进去!的意思分别是从右走向下一个节点,还是从上往下走向下一个节点,初始化数组,这个时候由于只能向下和向右走,故应该以一个维度来初始化!数组不再是一维的,而是二维的,从两个方向可以走,故递推公式为。思路:确实巧妙,学习一下!完全考察分析问题的能力。思路:这道题区分于爬楼梯的问题,

2024-02-22 20:55:35 333

原创 代码随想录算法训练营第三十八天|500.斐波那契数、70.爬楼梯、746.使用最小花费爬楼梯

思路:dp数组的含义,dp[i]的含义从0到i这个位置有dp[i]种走法,若从i-1到i这个位置仅有一种走法,从i-2到i这个位置仅有一种走法,故dp[i]=dp[i-1]+dp[i-2]种走法,递推公式就出来了,会发现这道题和斐波那契数是一样的,只是需要你自己去转换!思路:本道题的比上一道题的多的就是要选择从哪一个爬上来,只需要确定爬到i的最小花费,而不是总的可能性,所以有点区别而已。4.遍历顺序,举个例子,N=10,dp[10]=dp[9]+dp[8]…1.dp数组为每次计算的结果,i就是f(i)

2024-02-21 20:50:11 374

原创 代码随想录算法训练营第三十七天|738.单调递增的数字、968. 监控二叉树

思路:最开始的思路,无疑是暴力求解,先是判断该数满足条件,若不满足条件,则将其减一,然后再判断!学习一下代码随想录的解法,首先判断相邻的两个数是否满足题目条件,若不满足,则将前一个数减一,后一个数变成9。这个是局部条件,推广到全局即可,但是有个问题,我们在何处设置其为9,以及如何去遍历呢?这个问题十分重要,举个例子,42352,其比小的数满足条件的数为39999,即只要我们前面有个任何一个位置满足。思路:这道题的思路有点像动态规划的,采用后序遍历,从叶子节点开始看,因为叶子节点不能放,这样是最省摄像头的!

2024-02-20 10:53:23 392

原创 代码随想录算法训练营第三十六天|435.无重叠区间、763.划分字母区间、56.合并区间

思路:找到删除几个区间,让题目给出的区间没有重叠部分,那么首先我们先进行排序(按照左边界排序),那么下一个区间的左边界小于上一个区间的右边界,那么这两个区间一定有重叠的部分,说明这两个区间必须要移除掉一个,那么这两个移除掉哪一个呢?思路:最开始的时候思路也是先进行排序,然后判断两个区间是否重叠,将区间更新成更大的一个区间,但是对于怎么加入到。总结: 重叠区间的问题,一般都是将其先排序,然后判断上一个区间的右边值与下一个区间的左边值是否重叠等问题!空间复杂度:O(logn)空间复杂度:O(n)

2024-02-19 15:36:47 431

原创 代码随想录算法训练营|二叉树总结

其实二叉树就是一种类似链表结构(故打好链表基础十分重要!

2024-02-18 22:31:43 539 1

原创 代码随想录算法训练营第三十四天|860.柠檬水找零、406.根据身高重建队列、452.用最少数量的箭引爆气球

思路:找到重叠的区间,首先按照左边临界值或者右边临界值排序!若两个区间重叠一部分,保存这两个区间的右端点一定要是小的那一个,这样读取下一个时候,不会错过下一个小区间。假如更新更大的那一个,那么可能下一个区间与大的重合,但是与小的不重合,这个时候小的那一个就不会被击中,这样就出现问题了!思路:这道题最开始一点思路都没有,应该怎么样去排序,先按照身高排序,那么某个位置的元素,保证其前面的元素的身高参数一定是大于其本身的,根据其第二个参数插入在对应的位置!

2024-02-17 11:53:11 359

原创 代码随想录算法训练营第三十三天|1005.K次取反后最大化的数组和、134.加油站、135.分发糖果

分为几种情况,首先,有正有负的情况,那么将负数变为正数,肯定是最好的,但是如果K次取反,还存在负数呢?那么变换哪些负数也是有讲究的,肯定选择取反负数最小的(其绝对值最大的)得到最后的和为最大!第二种情况,将数组全部反转为非负的,那么此时应该反转哪个数,使得最好的和为最大呢?思路:这道题要保证两件事,第一件事确保整个数组的(gas[i]-cost[i])的和是大于等于0的,第二件事是保证每一步的差值加上前面剩余的是大于等于0的,这样去寻找某个位置,他只要能保证这两个条件满足,这能跑完!

2024-02-16 16:02:02 378

原创 代码随想录算法训练营第三十二天|122.买股票的最佳时机II、55.跳跃游戏、45.跳跃游戏II

具体思路还是十分容易的,就是要拆解利润,因为我们已知这几天的利润,那么我们有个最简单暴力的做法,就是我们今天买了,明天卖了就能赚钱,以两天为一个小区间,来拆解大区间!思路:关键点还是在于最大覆盖范围,在于什么时候去更新覆盖范围,那么就是将目前的范围遍历一遍,得到最大的下一个覆盖范围,进行更新,更新后立即判断是否覆盖了整个数组,如果覆盖,即能跳出,若不覆盖,将上述过程重复一遍!(和昨天的摆动序列思路有点像,但是这道题需要你自己去分解,难点不同,但是只要分解出来了,代码难度小于摆动序列的)空间复杂度:O(1)

2024-02-15 11:23:57 374

原创 代码随想录算法训练营第三十一天|455.分发饼干、376.摆动序列、53.最大子数组和

怎么感觉贪心算法有点像脑筋急转弯呢?

2024-02-14 15:31:31 313

原创 代码随想录算法训练营第十八天|513.找树左下角的值、112.路径总和、106.从中序和后序遍历排列构造二叉树

思路:从题目条件要确定中间节点,左子树和右子树!思路:首先用层序遍历,这道题能感觉到层序遍历,

2024-02-11 10:56:36 375

原创 代码随想录算法训练营第十七天|110.平衡二叉树、257.二叉树的所有路径、404.左叶子之和

思路:定义一个全局变量flag,采用类似于前序遍历的方法,进行遍历!思路:最开始拿到这道题,思路还是会回溯,建立一个标志位!

2024-02-11 10:41:33 363

原创 代码随想录算法训练营第三十天|332.重新安排行程、51.N皇后、37.解数独

思路:这道题做了之前的回溯算法基本上思路理解起来还是很容易的。

2024-02-08 16:46:34 380

原创 代码随想录算法训练营第二十九天|491.非递减子序列、46.全排列、47.全排列II

肯定是过不了的,因为其不是一个有序序列,并且必须保持其原本的大小顺序,故这道题只能使用哈希表来去重,这道题其实力扣上面还有点小坑,就是他给的两个示例特么都是排序的,但是题目又没提,误导人。思路:这道题最开始的时候,我想到两个问题:一个是如何维持递增的序列,一个是如何去重,写了一版代码,用的前面的去重方法,但是遇到一个case始终过不了,思路:第一次接触全排列的问题,体会其与组合,分割问题的不同之处!这个数组直接进行去重,其实对于排列问题使用的。又学会一种新的去重同一层的方法!

2024-02-07 14:50:12 448

原创 代码随想录算法训练营第二十八天|93.复原IP地址、78.子集、90.子集II

思路:与前面组合和排列的问题最大的区别就是获取结果的位置,因为其是遍历整个树,满足条件的都能要,而不像前面的问题基本上都是要叶子节点!思路:参考组合总和II的去重思想,有两个关键!,一个是区分一个树上的重复,还是一层的重复,第二个是一定要记得排序,这就是为什么可以用。思路:这道题和回文子串差不多,感觉细节太多了,有思路,就是写不出来,难受。的关键,如果不排序,这个条件是没法起作用的!

2024-02-06 15:56:35 387

原创 代码随想录算法训练营第二十七天|39.组合总和、40.组合总和II、131.分割回文串

思路:这道题最开始也没写出来,但是我感觉思维难度不如上一道,但他考察的综合能力要求更高的!思路:去重是这里的关键呀!区分清楚是一支树上的重复还是一层的重复,说实话也是做了才想到的。回溯问题,一定要注意剪枝啊!

2024-02-05 19:20:07 376

原创 代码随想录算法训练营第二十五天|216.组合总和III、17.电话号码的字母组合

剪枝操作:即累加的和还没到k个数的时候,就已经大于目标值了,这个时候就不需要再累加下去了,直接返回!另外一个地方就与组合那道题一样的地方进行剪枝!中取出每一个字符的映射到对应的组合上去!这里我一直没处理好!思路:其实这道题我感觉回溯倒不是难点,难点在于如何处理从。

2024-02-03 16:16:20 404

原创 代码随想录算法训练营第二十四天|77.组合

会发现这些问题的公共特点都是从一个集合中选取某一部分子集出来,只是不同的问题,子集的特点不同!故可以把回溯问题考虑成一个N叉树的问题,首先深度为2的一层,是从集合中枚举符合条件每个元素,然后再往下分别枚举!可以从这张图看出,一个回溯问题可以看成一棵树,最底层就是得到的结果,加入其中之后,另外的情况也要加入,那么在回溯的这个过程就要注意弹出数据!其实对比上面一个图,这张图第一层k=1的时候,这个4这根线是没必要的,压根不需要去讨论第一层取4这个问题,故在。回溯算法:其实就是递归,但是其更加考虑是归这个过程!

2024-02-02 11:19:48 346

原创 代码随想录算法训练营第二十三天|669.修剪二叉树、108.将有序数组转换为二叉搜索树、538.把二叉搜索树转换为累加树

思路:这就是构建二叉树,关键点就是找到每棵树的根节点,以及如何分割出左子树和右子树!思路:中序遍历是关键!

2024-02-01 17:19:56 454

原创 代码随想录算法训练营第二十二天|235.二叉搜索树的最近公共祖先、701.二叉搜索树中的插入操作、450.删除二叉搜索树中的节点

思路:昨天练习了二叉树的搜索,今天这道题是二叉搜索树的搜索,其具有有序这个特点,其能决定我们每次搜索是进入该节点的左子树还是右子树,而且其具有一个特点,一旦要搜索的节点p和节点q不存在同一个子树中,那么此时的root一定是他们两个的最近公共祖先!思路:其实这道题看起来复杂,做起来容易,就是无论如何,我们都将要插入的节点,插入到最后一个位置,每次只需要比较其比根节点大还是小,放在左子树还是右子树!时间复杂度:O(n)空间复杂度:O(n)时间复杂度:O(n)空间复杂度:O(n)空间复杂度:O(n)

2024-02-01 12:01:03 523

原创 代码随想录算法训练营第二十一天|530.二叉搜索树的最小绝对差、501.二叉搜索树中的众数、236.二叉树的最近公共祖先

思路:请注意二叉搜索树的特点,使用中序遍历去遍历它,可以得到一个有序数组,只要存在有序的特点,求解 很多问题都是迎刃而解的!特别是差值,最大值的问题,可以将二叉树转换成数组来解决。思路:最开始拿到这道题的时候,就想用hashmap,暴力做出来了,是方法一,但是这种做法有个缺点,没有利用到二叉搜索树的特点,适合普通二叉树的做法。利用pre去存二叉树中的前一个节点!思路:最开始拿到这道题没有思路,还是要学会自下向上的递归遍历!双指针的妙解,充分利用二叉搜索树的特点!后序遍历,哨兵节点,二叉搜索树。

2024-01-31 15:51:46 624

原创 代码随想录算法训练营第二十天|654.最大二叉树、617.合并二叉树、700.二叉树搜索树中的搜索、98.验证二叉搜索树

思路:最开始拿到这道题的时候,我使用的是层序遍历来做,虽然也能做出来,但是有点不够好,因为这是一道二叉搜索树中的搜索问题,其有一个性质没有利用,其左子树一定是小于根节点,右子树一定是大于根节点的!故重新写了递归版本。思路:这道题的思路跟之前利用前序遍历和中序遍历的数组来构造二叉树是一样的,抓住的关键点就是每个树的根节点,如何分割出来左子树和右子树!思路:这道题最开始还是没想清楚这个逻辑,产生这个新节点应该怎么去讨论!思路:这个题得把中序遍历联系起来,有两种做法!递归,层序遍历,BFS,DFS。

2024-01-30 22:22:19 507

空空如也

空空如也

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

TA关注的人

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