python滑动窗口
时间: 2023-10-28 12:57:56 浏览: 125
滑动窗口是一种常用的算法技巧,可以解决一些数组和字符串相关的问题。在 Python 中,我们可以使用双指针来实现滑动窗口。
下面是一个简单的示例代码,演示了如何使用滑动窗口来找到数组中的最大值:
```python
def sliding_window(nums, k):
if not nums or k <= 0 or k > len(nums):
return []
result = []
left = 0
right = k - 1
while right < len(nums):
result.append(max(nums[left:right+1]))
left += 1
right += 1
return result
```
在这个示例中,`nums` 是输入的数组,`k` 是窗口的大小。函数 `sliding_window` 使用双指针 `left` 和 `right` 来表示滑动窗口的左右边界。我们通过遍历数组,并在每次移动窗口时求出当前窗口的最大值,并将其添加到结果列表中。
使用示例代码进行测试:
```python
nums = [1, 3, -1, -3, 5, 3, 6, 7]
k = 3
result = sliding_window(nums, k)
print(result) # 输出: [3, 3, 5, 5, 6, 7]
```
希望这个示例能帮助你理解如何在 Python 中实现滑动窗口算法。如果有任何疑问,请随时向我提问。
阅读全文