一般:
1. 思路清晰,简化流程。
2. 数组访问:
高位数组寻址优化。
访问的内存尽量连续。
3. 少用除法、取模。
4. 重复运算,存入临时变量。
5. 循环展开,刺激 CPU 并行。展开次数过多,性能会下降,因为寄存器不够用。
6. 读入优化,输出优化。
分块:
1. 调整块大小。
FFT:
1. 减小循环长度。
2. 两次 FFT ,complex(a[] + b[], a[] - b[]) 自乘。
递归:
1. 改写非递归。例如并查集,例如欧几里得算法,等等。
STL:
1. 手写。
时间: 2024-10-11 07:52:18