理论基础
虽然这个例子很极端,但可以表达这么个意思:刷题或者面试的时候,手动模拟一下感觉可以局部最优推出整体最优,而且想不到反例,那么就试一试贪心。
455
颠倒遍历顺序不可以,外层一直移动的,内层是动态移动的
不能用while,要用if,每次匹配后两个都要减法。
index大小判断要放在前面,如果有数据比较容易溢出。
376
局部最优:单调坡上的元素都给删掉,->全局最优:最长的摆动子序列
遇到摆动就++;
1.上下坡有平坡
2.首尾元素
3.单调坡有平坡:prediff只记录初始的摆动方向,当摆动出现时
因为使用了i+1,所以i的范围要更改
predif = 0是有单调的出现,但是如果curdiff=0设置全部情况有问题,因为一开始predif为0,默认初始值左边有个一样值的元素
53
只要连续和不是负数,他都有可能让后面的数变大,所以仍然可以继续➕下一个元素进行判断。
小于或者小于等于都可以,如果要记录最短的最大连续和子序列,那么等于