关于复杂度的思考

时间:2025-04-24 15:28:58

- 常见的时间复杂度
logn:二分查找 树状数组
n:hash,双指针,kmp
nlogn:堆排序 sort()
n根号n:
n方:
n方logn:二分
n的3次方:
指数:DFS 二进制枚举

- 空间复杂度限制在O(1):二分 位运算 双指针 用原数组做hash数组

时间复杂度不超过10^7,c++题目通常是1s java会有2到3倍的时间
N=7次方——O(n),
N=6次方——O(n),小的O(nlogn)
N=5次方——O(n) O(nlogn)
N=4次方——O(n根号n) O(nlogn)
N=3次方——O(n方logn)
N=2次方——O(n^3)
N=20——O(2^N)
N=15——O(3^N)
N=10——O(N!)