跟据数据范围确定所用算法

通常情况下,给定的时间限制都是1秒,那么对我们数据范围的要求就是10的7次幂之内就要完成。
下面我会将不同的数据范围所选择的不同的算法列举一下:
1.n<=30
指数级别,dfs+剪枝,状态压缩dp
2.n<=100 => O(n3)
floyd,dp
3.n<=1000 => O(n2) O(n2logn)
dp,二分
4.n<=10000 => O(n∗√n)
块状链表
5.n<=100000 => O(nlogn)
各种sort,线段树、树状数组、set/map、heap、dijkstra+heap、spfa、求凸包、求半平面交、二分
6.n<=1000000 => O(n)以及常数较小的 O(nlogn)O(nlogn) 算法
hash、双指针扫描、kmp、AC自动机,常数比较小的 O(nlogn) 的做法:sort、树状数组、heap、dijkstra、spfa
7.n<=10000000 => O(n)
双指针扫描、kmp、AC自动机、线性筛素数
8n≤109 => O(√n)
判断质数
9.n≤1018 => O(logn)
最大公约数

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值