基础算法2: 快速幂
快速幂算法原理介绍快速幂是一种高效计算 大整数幂取模 的算法。朴素计算 base^exp 的时间复杂度为 O(exp),当指数极大时(例如 exp=10^9)会严重超时。快速幂利用 分治 思想,将时间复杂度降为 O(log exp)。 核心思想根据指数的奇偶性进行二分递推: 若 exp 为偶数:base^exp = (base^2)^(exp/2) 若 exp 为奇数:base^exp = base × (base^2)^((exp-1)/2) 每次将指数...
基础算法1: 高精度
高精度运算 高精度运算主要解决的是在进行基本运算时输入或输出数据的大小超出了 long long的范围的问题,利用string对运算进行转换即可解决。 以下附上代码: 高精度加法1234567891011121314151617181920212223string add(string a, string b) { string res = ""; // 用于存储结果(此时是逆序的) int i = a.siz...