2022.5.2
1、贪心算法刷题:
376. 摆动序列 局部最优:删除单调坡度上的节点(不包括单调坡度两端的节点),那么这个坡度就可以有两个局部峰值。 整体最优:整个序列有最多的局部峰值,从而达到最长摆动序列。 53. 最大子序和 贪心的思路为局部最优:当前“连续和”为负数的时候立刻放弃,从下一个元素重新计算“连续和”,因为负数加上下一个元素 “连续和”只会越来越小。从而推出全局最优:选取最大“连续和” 122. 买卖股票的最佳时机 II
总结:
- 贪心的本质是选择每一阶段的局部最优,从而达到全局最优。
- 不好意思,贪心没套路,就刷题而言,如果感觉好像局部最优可以推出全局最优,然后想不到反例,那就试一试贪心吧!
- 贪心的本质:局部最优和全局最优两个关键点。
2022.5.3
1、贪心算法刷题:
55. 跳跃游戏 (循环i<cover,cover=max(cover,i+nums[i])) 1005. K 次取反后最大化的数组和 (两次贪心,第一次贪心:把负数→正数,k–,第二次贪心:k为奇数,将最小数变负) (学了IntStream快排,.of().boxed().sorted().mapToInt().toArray()和Arrays.stream(nums).sum()) 134. 加油站 (三个参数,start,cursum,totalsum,totalsum>0,可以跑完,cursum<0,当前不行,start+1)
2022.5.4
1、回溯刷题:
77. 组合 216. 组合总和 III
1、二叉树刷题:
226. 翻转二叉树 101. 对称二叉树 104. 二叉树的最大深度
|