Python滑动窗口算法:滑动窗口算法(4 by 4 sliding window price)

我知道滑动窗口算法的时间复杂度是 o(N),但是可变大小的滑动窗口算法的时间复杂度是多少。

对于 e-

数组 = [1,2,3,4,5,6]

当滑动窗口的大小为 = 1 时窗口-[1],[2],[3],[4],[5],[6]

当滑动窗口的大小为 = 2 时窗口-[1,2],[2,3],[3,4],[4,5],[5,6]

当滑动窗口的大小为 = 3 时窗口-[1,2,3],[2,3,4],[3,4,5],[4,5,6]

等等...

窗口大小的范围为 1 到 n(窗口大小的有效值)。如果创建单个窗口的成本为 O(N),则创建 N 个窗口的成本为 O(N ^ 2)?

在数组中运行滑动窗口是 O(n),而不管窗口的大小。

对于所有窗口大小,头指针和尾指针单调增加。相反,典型的嵌套循环二次算法为每个外部索引i运行内部索引jin

这里的假设是,除了 deque 优惠和投票(每个i的恒定时间)之外,您没有做任何额外的工作,例如为每个i循环遍历窗口。

如果你正在创建n窗口从1n,你回到经典的嵌套循环二次算法,O(n ^ 2)。

相关推荐
专注VB编程开发20年1 分钟前
VBA/VB6 ADO数据库查询jet+只读更快
开发语言·数据库·ado·vb
jiayong232 分钟前
第 11 课:把筛选条件同步到 URL
开发语言·前端·javascript
船长Talk2 分钟前
NumPy+Pandas数据分析基础完全指南
python
Wyz201210242 分钟前
宝塔面板安装后显示无法连接数据库_检查MySQL服务状态
jvm·数据库·python
曹牧3 分钟前
MantisBT
开发语言
2301_777599374 分钟前
Redis如何优化大量对象存储_利用Hash结构减少内存碎片占用
jvm·数据库·python
2301_777599375 分钟前
Python怎么解压tar.gz_tarfile模块提取打包文件操作
jvm·数据库·python
彳亍走的猪6 分钟前
Android 全局防抖/防重复点击
android·java·开发语言
小白学大数据8 分钟前
Python 爬取图片攻略:告别水印,批量保存高清图片
开发语言·python
2301_815279529 分钟前
HTML怎么标注密钥权限范围_HTML “仅读取用户信息”说明【操作】
jvm·数据库·python