Algorithm 模幂运算中从右向左方法的时间复杂度是多少?

Algorithm 模幂运算中从右向左方法的时间复杂度是多少?,algorithm,Algorithm,模幂运算中从右向左方法的时间复杂度是多少 它是O1吗,因为我们正在经历e的二进制表示,它是常数时间 int mod(int b, int e, int m) { b = b % m; int result = 1; while (e) { if (e % 2 == 1) { result = (result * b) % m; } b = (b * b) % m; e >>

模幂运算中从右向左方法的时间复杂度是多少

它是O1吗,因为我们正在经历e的二进制表示,它是常数时间

int mod(int b, int e, int m) {
    b = b % m;
    int result = 1;

    while (e) {
        if (e % 2 == 1) {
            result = (result * b) % m;
        }
        b = (b * b) % m;
        e >>= 1;
    }
    return result;
}

你需要更具体地说明你的计算模型。你可能应该在计算机科学SE上而不是在这里更详细地了解它。什么是计算机科学SE?cs.stackexchange.com我不知道!thanks@tmyklebu不确定,但我想它适合这个论坛