没有合适的资源?快使用搜索试试~ 我知道了~
DoWalle#algo#1438-[重点题-红黑树-单调队列]-绝对差不超过限制的最长连续子数组1
需积分: 0 0 下载量 199 浏览量
2022-07-25
14:26:35
上传
评论
收藏 3KB MD 举报
温馨提示
「队首」可获取到最小值删除元素时,与「队首」元素相比较,与「队首」元素相等时删除例如 1 2 3,往里面添加 2,先去掉 3,再添加 2,最后为 1 2 2获取
资源推荐
资源详情
资源评论
[1438. 绝对差不超过限制的最长连续子数组](https://leetcode-cn.com/problems/longest-continuous-subarray-with-absolute-diff-less-than-or-equal-to-limit/)
如何对窗口限制:窗口内最大最小值的差的绝对值 <= limit
需要快速的对指定值进行操作
因此有两种数据结构可以使用,红黑树,单调队列
## 方法一:红黑树
时间复杂度:`O(nlogn)`
空间复杂度:`O(n)`
```c++
class Solution {
public:
int longestSubarray(vector& nums, int limit) {
int left = 0;
int right = 0;
multiset window;
int ans = 0;
while (right < nums.size()) {
window.insert(nums[right]);
while (abs(*window.begin() - *window.rbegin()) > limit) {
window.erase(window.find(nums[left]));
left++;
}
ans
点击阅读更多
资源评论
学习呀三木
- 粉丝: 29
- 资源: 303
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功