我对java(和整体编程)相当新,并且已经收到了从头到尾实现Sliding Window对象的任务.骨架代码如下:
import java.util.Scanner;
//implement class SlidingWindow
class Main {
// this is the test code for the judge, do not modify
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int windowSize = scanner.nextInt();
SlidingWindow window = new SlidingWindow(windowSize);
while (scanner.hasNextInt())
{
int value = scanner.nextInt();
window.Put(value);
System.out.println("[" + window.Min() + " " + window.Max() + "]");
}
scanner.close();
}
Run Code Online (Sandbox Code Playgroud)
需要做些什么(以及我迄今为止解决它的想法)
创建一个可以使用窗口大小n实例化的滑动窗口w:
SlidingWindow w = New SlidingWindow(n)//这是最让我感到烦恼的是 - 它是一个自我增长的阵列吗?链表?
输入方法Put接受整数并且没有返回值:
public static void Put(int value){//实现将依赖于SlidingWindow
最大和最小方法返回最近输入的最小值和最大值.我将通过寻找最小值和最大值来做到这一点.
如果输入的数量超过窗口的大小,则应丢弃最旧的元素. …