给定一个大小为n的数组,即它中有n个元素。和窗口大小'W'。你必须在所有'W'大小的子阵列中找到最大值。从索引0开始。
Sample Input:
n=10 , W = 3 // n is number of element in array and W is window size.
10 3
1 -2 5 6 0 9 8 -1 2 0
Answer = 5 6 6 9 9 9 8 2
我尝试了什么 - (自我平衡BST)
时间复杂度:
O(WLogW).
O(LogW)
。自从步骤
2.1,2.2和2.3在循环中运行n-W+1 times
,时间
完整算法的复杂性为O(WLogW + (n-W+1)*LogW)
也可以写成O(nLogW)
。我的问题是我可以改进吗?关于BST方法的任何建议或我没有听说过的任何其他算法?
到处都只看到Dequeue Method。没有任何方法吗?