一些 NOIP 常用算法、数据结构的时间复杂度总结

本文总结了NOIP比赛中常用的图论算法、动态规划问题和数据结构的时间复杂度,包括搜索、最短路、最小生成树、LCA、01背包、完全背包、多重背包、并查集、树状数组、线段树和ST表等,并提供了相关复杂度分析。
摘要由CSDN通过智能技术生成

一些 NOIP 常用算法、数据结构的时间复杂度总结

参考资料:算法进阶指南第2版,https://github.com/tianyicui/pack/V2.pdf(DP 背包问题部分)

图论算法

n = ∣ V ∣ , m = ∣ E ∣ . n=|V|,m=|E|. n=V,m=E.

搜索

用邻接表存图:

算法 时间复杂度
DFS、BFS O ( m n ) O(mn) O(mn)

用邻接矩阵存图:

算法 时间复杂度
DFS、BFS O ( n 2 ) O(n^2) O(n2)

最短路

单源最短路径
要求所有边的长度为非负数
算法 时间复杂度
Dijkstra 算法 O ( n 2 ) O(n^2) O(n2)
堆优化的 Dijkstra 算法 O ( ( m + n ) lg ⁡ n ) O((m+n)\lg{n}) O((m+n)lgn)
<
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值