給定乙個陣列 nums,有乙個大小為 k 的滑動視窗從陣列的最左側移動到陣列的最右側。你只可以看到在滑動視窗內的 k 個數字。滑動視窗每次只向右移動一位。
返回滑動視窗中的最大值。
示例:
輸入: nums =[1
,3,-
1,-3
,5,3
,6,7
], 和 k =
3輸出:[3
,3,5
,5,6,7]
解釋:
滑動視窗的位置 最大值--
----
----
----
----
--[1
3-1]
-353
6731
[3-1
-3]5
3673
13[-
1-35
]367
513-
1[-3
53]6
7513
-1-3
[536
]761
3-1-
35[3
67]7
你可以假設 k 總是有效的,在輸入陣列不為空的情況下,1 ≤ k ≤ 輸入陣列的大小。
使用暴力法
class
solution
(object):
defmaxslidingwindow
(self, nums, k)
:"""
:type nums: list[int]
:type k: int
:rtype: list[int]
"""result =
n =len(nums)
if n*k ==0:
return
for i in
range
(n-k+1)
:max
(nums[i:i+k]))
return result
如有錯誤,請批評指正!
LeetCode 239 滑動視窗最大值
class solution public int maxslidingwindow int nums,int k int numlen nums.length if nums null numlenmaxheap new priorityqueue a,b nums b nums a for in...
LeetCode 239 滑動視窗最大值
給定乙個陣列 nums,有乙個大小為 k 的滑動視窗從陣列的最左側移動到陣列的最右側。你只可以看到在滑動視窗 k 內的數字。滑動視窗每次只向右移動一位。返回滑動視窗最大值。示例 輸入 nums 1,3,1,3,5,3,6,7 和 k 3 輸出 3,3,5,5,6,7 解釋 滑動視窗的位置 最大值 1...
leetcode239滑動視窗最大值
給定乙個陣列 nums,有乙個大小為 k 的滑動視窗從陣列的最左側移動到陣列的最右側。你只可以看到在滑動視窗 k 內的數字。滑動視窗每次只向右移動一位。返回滑動視窗最大值。示例 輸入 nums 1,3,1,3,5,3,6,7 和 k 3 輸出 3,3,5,5,6,7 解釋 滑動視窗的位置 最大值 1...