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

一、376.摆动序列

1.题目描述

2.代码

3.思路

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

二、738.单调递增的数字

1.题目描述

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

2.代码

3.思路

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

相关推荐
向阳@向远方2 小时前
第二章 简单程序设计
开发语言·c++·算法
github_czy2 小时前
RRF (Reciprocal Rank Fusion) 排序算法详解
算法·排序算法
许愿与你永世安宁3 小时前
力扣343 整数拆分
数据结构·算法·leetcode
爱coding的橙子3 小时前
每日算法刷题Day42 7.5:leetcode前缀和3道题,用时2h
算法·leetcode·职场和发展
满分观察网友z4 小时前
从一次手滑,我洞悉了用户输入的所有可能性(3330. 找到初始输入字符串 I)
算法
YuTaoShao4 小时前
【LeetCode 热题 100】73. 矩阵置零——(解法二)空间复杂度 O(1)
java·算法·leetcode·矩阵
Heartoxx4 小时前
c语言-指针(数组)练习2
c语言·数据结构·算法
大熊背4 小时前
图像处理专业书籍以及网络资源总结
人工智能·算法·microsoft
满分观察网友z4 小时前
别怕树!一层一层剥开它的心:用BFS/DFS优雅计算层平均值(637. 二叉树的层平均值)
算法
杰克尼5 小时前
1. 两数之和 (leetcode)
数据结构·算法·leetcode