最大值和最小值的差小于或者等于num的子数组数量
对于子数组arr[i...j],如果max(arr[i...j]) - min(arr[i...j]) <= num则满足条件。
显然有:
- 如果
arr[i...j]满足条件,则子数组的子数组,即arr[k...l] (i <= k <= l <= j)也满足条件- 如果
arr[i...j]不满足条件,则子数组的父数组,即arr[k...l] (k <= i <= j <= l)也不满足条件
思路:
设置两个辅助队列
qmax和min,两个循环变量i和j,并循环遍历数组arr
qmax的队首和qmin的队首分别为子数组arr[i...j]的最大值和最小值
package com.lilydedbb;
import java.util.LinkedList;
/**
* Created by dbb on 2016/12/25.
*/
public

最低0.47元/天 解锁文章
402

被折叠的 条评论
为什么被折叠?



