目录

2025-3-9-leetcode刷题情况贪心算法-序列问题

2025-3-9 leetcode刷题情况(贪心算法–序列问题)

1.题目描述

https://i-blog.csdnimg.cn/direct/159f1bfc04fb49d085160488c597c075.png

2.代码

https://i-blog.csdnimg.cn/direct/1b38001614c5462f9b467cf14e3ae27b.png

3.思路

首先判断给的数组的长度,如果小于等于1就返回数组的长度。定义三个变量,一个为当前的差值,一个为前一个的差值,一个存储最长子序列的长度 。然后遍历数组进行循环判断,当前差值等于当前数减前一个数,如果当前差和前一个差分别为正负数,则count加1,再将当前差赋值给前一个差,如此循环,等遍历结束,返回count。

1.题目描述

当且仅当每个相邻位数上的数字 x和 y满足 x<=y时,我们称这个整数是单调递增的。给定一个整数 n,返回小于或等于 n的最大数字,且数字呈单调递增。

2.代码

https://i-blog.csdnimg.cn/direct/f14a40444da3494d8cea2b7a2c2bde35.png

3.思路

先将整数 n 转换为字符数组以便逐位操作;从数组倒数第二位开始向前遍历,若发现当前位数字大于后一位数字,就把当前位数字减 1,并记录下从下一位开始后续数字需置为 9 的起始位置;完成上述操作后,从记录的起始位置开始,将后续所有数字置为 9;最后把修改后的字符数组转换回整数并返回。