当前位置: 首页 > news >正文

【初赛】时间复杂度 - Slayer

时间复杂度

  • O(1)

  • O(n)

  • O(log n):

         for(int i=k;i<=n;i+=k)
    
  • O(log log n):
    (ps.这个好像不太对哦。

        for(int i=k;i<=n;i+=k)for(int j=k;j<=k;j+=l)```
  • O(n log log n):典型代表是线性筛素数算法

tips:

\( \log \log n !=\log^2 n\\ \log^2 n=\log n\times \log n \)

邻接矩阵

查询是否存在某条边:\(O(1)\)
遍历一个点的所有出边:\(O(n)\)
遍历整张图:\(O(n^2)\)
空间复杂度:\(O(n^2)\)

邻接表 vector

遍历整张图:O(n+m)。
空间复杂度:O(m)。

链式前向星

遍历整张图:O(n+m)。
空间复杂度:O(m)。

DFS

时间复杂度为 O(n+m)
空间复杂度为 O(n),

BFS

时间复杂度 O(n+m)
空间复杂度 O(n)(vis 数组和队列)

倍增LCA

倍增算法的预处理时间复杂度为 O(n log n),单次查询时间复杂度为 O(log n)。

树链剖分

预处理时间复杂度为 O(n),单次查询时间复杂度为 O(log n)。

拓扑

时间复杂度 O(E+V)

Floyd

时间复杂度:\(O(n^3)\)
空间复杂度:\(O(n^2)\)

dij

时间 O(m log n)

tarjan

时间复杂度 O(n + m)

http://www.zskr.cn/news/2086.html

相关文章:

  • PHP 性能优化实战 OPcache + FPM 极限优化配置
  • CSP 初赛整理
  • RST报文段的意义
  • Delphi TStringGrid控件学习笔记
  • Java第一次实验
  • HCIP回顾— BGP经典实验详解
  • 千靶日记-0002
  • 3.4 页面替换算法 Page Replacement Algorithms
  • Tekla坐标定位插件源码
  • K8S常见的微服务中间件部署之strom
  • 三种语句
  • ECT-OS-JiuHuaShan框架:自然规律的具象化智能体(附《易经》类比解析)
  • 力扣第5题最长回文子串
  • 用 Python 和 PaddleOCR 进行验证码识别
  • UniApp 自定义tabBar
  • 判断左手坐标系和右手坐标系的方法
  • 题解:P2012 拯救世界2
  • 题解:CF348C Subset Sums
  • 题解:CF2118D1 Red Light, Green Light (Easy version)
  • 27届春招备战一轮复习--第五期
  • 阅读方式
  • 软件测试工程师的职业天花板在哪里?如何突破?
  • 长乐一中 CSP-S 2025 提高级模拟赛 Day2
  • 费用流
  • [豪の学习笔记] 软考中级备考 基础复习#6
  • Ubuntu 卸载 Firefox 浏览器
  • ansible剧本
  • Ubuntu 安装 Google Chrome
  • npx playwright install chromium 安装失败,如何离线安装
  • Power BI制作指标达成跟踪器