【发布时间】:2021-07-08 08:30:46
【问题描述】:
给出一个数组 A 和一个整数 K。我们必须在 JAVA 中使用仅队列在所有大小为 K 的连续子数组中找到最大元素。
例如:
Input:
7 3
12 1 78 90 57 89 56
Output:
78 90 90 90 89
如何在 Java 中使用 only queue 解决这个问题?
【问题讨论】:
-
给出了一个数组和一个整数,...,仅使用队列解决它。什么队列?你尝试了什么,你在哪里卡住了?请选择一种语言
-
我可以用双端队列来解决这个问题……但我正在尝试只使用队列来解决它。
-
您需要一个函数来返回给定队列中的最大元素。然后创建一个队列并用列表的前 K 个元素填充它。打印最大值后(借助最初提到的函数),丢弃第一个元素并添加一个新元素。重复直到没有新元素为止。
标签: java algorithm data-structures queue