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)。

相关推荐
weixin_459753945 分钟前
MySQL 中高效存储与查询时间数据的最佳实践
jvm·数据库·python
qq_392690665 分钟前
HTML函数能否用老旧主板BIOS限制功能_固件版本影响分析【汇总】
jvm·数据库·python
狐狐生风7 分钟前
LangGraph 重构个人知识库问答系统(稳定 + 可扩展版)
python·langchain·rag·langgraph·agentai
qq_3759163710 分钟前
kettle菜鸟教程
开发语言·kettle
qq_3926906611 分钟前
Go语言如何做图片缩放_Go语言图片缩放裁剪教程【推荐】
jvm·数据库·python
IT北辰14 分钟前
一键整理试题库!用Python自动化处理Excel选择题
python·自动化·excel
m0_7364393015 分钟前
Golang怎么连接MySQL数据库_Golang MySQL连接教程【总结】
jvm·数据库·python
CLX050515 分钟前
c++怎么以独占模式打开文件_fsopen与_SH_DENYRW【详解】
jvm·数据库·python
老纪16 分钟前
如何处理SQL复杂业务关联删除_通过触发器实现级联清理
jvm·数据库·python
qq_2546744117 分钟前
Alpine Linux 基于 Debian 等系统的常规 Nginx
开发语言