第一眼看这个感觉思路没啥大问题,就是一个大循环不断后移,然后小循环维护一个k长度的队列。注意peekFirst和peekLast的使用,双端队列可以打破先进先出或者先进后出的局限性,因此peek没有默认值,得加上First或者Last来进行索引。
这里首先,双端队列
下面这里还有两个问题:1是不能是>=而得是>,因为如果有等于号多删除了一个元素的话到时候就会出现返回错误,导致结果有问题。2是不能用deque.peekLast这个放在nums中做索引,可能因为是Object目标?
2023/7/20
再次看这道题还是没有思路……但是结合前面几道题,这里还是应该按照先进先出的队列原理来维护一个由大到小的队列,然后每次需要的时候取头部或者尾部节点(和前面那道题思想一样)