自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 代码随想录算法训练营day42背包问题理论基础

背包便利从最大的开始从右向左以防在小背包立有过的再次被添加到大背包里面。注意一维数组遍历顺序,先物品再背包物品从0到i确定现在的行数。n个物体,每种一个,放包里的最大价值。dp[j]:容量为j的背包的最大价值。此层是由上一层推导出来的,可降维。

2023-06-02 14:25:47 103

原创 代码随想录算法训练营day41● 343. 整数拆分 ● 96.不同的二叉搜索树

每种情况是几种右子树乘以几种左子树同样的左右子树有几种由有几个节点来确定。dp[i]可以表示为头节点从1到i的所有情况的总和。dp[i]表示有i个节点时有几种二叉搜索树。

2023-05-29 12:41:55 131

原创 代码随想录算法训练营day39 ● 62.不同路径 ● 63. 不同路径 II

【代码】代码随想录算法训练营day39 ● 62.不同路径 ● 63. 不同路径 II。

2023-05-27 10:18:07 109

原创 代码随想录算法训练营day38● 509. 斐波那契数 ● 70. 爬楼梯 ● 746. 使用最小花费爬楼梯

不知道为什么一定要把n=1和n=2单拎出来不然不行。不知道为什么给数组赋少了会执行错误。

2023-05-26 13:18:14 110

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

跳了跳了没啥动力,还要应付考试,好麻烦。

2023-05-25 17:35:09 56

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

先按绝对值大小排序,k–操作进行消耗,一遍过后k还有就紧着k的剩余量对最小的正数,即数组中最后一个按k是否为2的倍数进行取反。(要用到cmp,cmp的逻辑还没搞懂)错误答案:无法完成对candy的初始化。

2023-05-24 17:29:53 40

原创 代码随想录day32● 122.买卖股票的最佳时机II ● 55. 跳跃游戏 ● 45.跳跃游戏II

可任意把利润分割成小的部分,只要大于0就加入到结果里面。想了好久,感觉最后还是要数最大范围的红条。写了好久感觉代码能力还是太差。

2023-05-20 18:10:44 41

原创 day31● 455.分发饼干 ● 376. 摆动序列 ● 53. 最大子序和

大的要尽量满足大的胃口,饼干为给孩子之后才能继续向下遍历。

2023-05-19 21:58:01 91

原创 代码随想录算法训练营day27 39. 组合总和 40.组合总和II 131.分割回文串

和前两天的一样,不过递归部分自己也递归进去而不是从下一个开始。还有就是每组答案的长度不一样要一个length来记录,又是数组上的知识。查重,前后元素一样后元素能满足的组合条件前元素一定能满足。

2023-05-17 17:26:20 101

原创 代码随想录day25● 216.组合总和III ● 17.电话号码的字母组合

这一段的return写在里面了,应该无论是不是n都要return。可能是因为sum写在获得了k个数字之后最后内存溢出了。与上一个类似,注意为空的情况。

2023-05-16 17:25:02 56

原创 代码随想录day25 回溯算法 LC.77组合

到后面几个到不了k个,可以直接就不遍历如n=5,k=3,345可以组成,从4开始只有两个无法组成组合。注意递归的顺序,return一次返回上一次递归,该代码中for循环结束了也返回上一次递归。下代码中递归时参数是j+1以便继续向下追踪而不能是startindex+1。再往下层也是同理,从某个位置往后就无法成功到达所需要的个数。

2023-05-16 13:45:12 89

原创 代码随想录算法训练营day15层序遍历

交换完本层的两节点在调用自己去交换下一层的子树。上示代码的两个printf都输出的是同一地址。关于根节点对称,而非每个小子树分别对称。两边的(左左右右)靠里的(左右右左)swap函数要用二级指针。去二维数组地址的操作。

2023-05-09 21:47:57 39

原创 代码随想录day14 递归遍历 迭代遍历 统一迭代

2.确定单层递归逻辑:如上所示前序遍历先根节点,再左最后右。栈是后进先出所以先将右节点压进去才能保证弹出来的是先左后右。栈中要存放的是节点二分节点中的变量保证能够更新节点。3.确定终止条件:指向NULL时开始返回。1.确定递归函数要哪些参数。

2023-05-04 14:16:07 77

原创 代码随想录训练营day10

pop函数中while循环对in或out的判断不带等号。

2023-04-28 21:19:47 34

原创 代码随想录day9KMP算法

回退的部分还不是很懂,再看看回退。KMP精髓:模式串的前后缀性质。

2023-04-28 19:51:30 145

原创 代码随想录day8 344.反转字符串 541. 反转字符串II 剑指Offer 05.替换空格 151.翻转字符串里的单词 剑指Offer58-II.左旋转字符串

给定一个字符串 s 和一个整数 k,从字符串开头算起,每计数至 2k 个字符,就反转这 2k 字符中的前 k 个字符。如果剩余字符小于 2k 但大于或等于 k 个,则反转前 k 个字符,其余字符保持原样。scanf函数只能如下写,scanf(“%s”,&s);输入:s = “abcdefg”, k = 2 输出:“bacdfeg”输入:s = “abcd”, k = 2 输出:“bacd”在原地更改:建中间数组把反向的存起来,再复制到原数组上去。如果剩余字符少于 k 个,则将剩余字符全部反转。

2023-04-28 19:43:52 34

原创 代码随想录Day6哈希表

改良:只用一个数组,现加后减,最后验证是不是全部为0。哈希表:将要检索的目标转化成索引下标。关于C语言实现set稍后再说。先把数组1做成哈希表。

2023-04-24 23:18:24 96

原创 【无标题】代码随想录 day4 24 19 160 142

虚拟头节点快慢指针。

2023-04-23 23:45:46 125 1

原创 代码随想录Day3LeetCode 203 707 206

b.自己先前的疑惑为什么有的shead指针需要malloc但是其他的不用,是之后对起操作的dummy->next = head;中他自己不能是空指针必须先有指向。注意temp指针后temp与cur的赋值顺序。(练的还是太少,结束了回来再看看)

2023-04-22 23:59:10 55 1

原创 代码随想录Day2 977

搞清楚时间复杂度问题for里套while不一定是n方,每个元素进出被操作两次应是2*n。改写法定义新数组时只能用malloc不能单纯的int name[size]语法和逻辑都没搞明白明天早起再试试。思路:平方计算完成后再按大小排序。j指向尾端 满足条件i向后移动。一开始想不到要怎么用双指针。

2023-04-20 23:26:23 151 1

原创 代码随想录算法训练营第一天|704.二分查找、27.移除元素

先确定好区间范围再写while里面的判断条件以及middle的赋值。1.middle依次和目标值作比较大于则向左缩进,小于则向右缩进。不同:初始l与r时r是numsSize,而不用减一。无法判断target没在里面的情况。2.不能直接相加/2,会超范围。

2023-04-19 22:04:20 207 1

空空如也

空空如也

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

TA关注的人

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