leetcode 50. Pow(x, n)

leetcode 50. Pow(x, n)

1.思路:快速幂算法

在这里插入图片描述
边算边维护
这样的时间复杂度是o(logn)

2.代码

class Solution {
public:
    double myPow(double x, int n) {
        typedef long long LL;
        bool is_minus = n < 0; // 特判负数的情况
        double result = 1;

        for(LL k = abs((LL)n); k; k >>= 1){
            if(k & 1) result *= x;
            x *= x;
        }

        if(is_minus) return 1 / result;
        else return result;
    }
};

相关推荐

  1. LeetCode50. Pow(x, n)

    2024-04-14 10:26:04       33 阅读
  2. LeetCode--55

    2024-04-14 10:26:04       38 阅读
  3. LeetCode--58

    2024-04-14 10:26:04       23 阅读
  4. LeetCode 每日一题 Day 47 - 50

    2024-04-14 10:26:04       35 阅读
  5. LeetCode 每日一题 Day 51 - 53

    2024-04-14 10:26:04       34 阅读
  6. 商城数据库(51 52 53 54 55 56 57 58 59 60)

    2024-04-14 10:26:04       13 阅读
  7. LeetCode56. Merge Intervals

    2024-04-14 10:26:04       28 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-04-14 10:26:04       19 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-04-14 10:26:04       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-04-14 10:26:04       20 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-04-14 10:26:04       20 阅读

热门阅读

  1. 谈谈springboot的工厂模式

    2024-04-14 10:26:04       18 阅读
  2. webrtc m98编译问题记录

    2024-04-14 10:26:04       47 阅读
  3. js的常用方法

    2024-04-14 10:26:04       20 阅读
  4. 持续提升敏捷度,你需要实施Sitecore DevOps

    2024-04-14 10:26:04       17 阅读
  5. 模板函数小结

    2024-04-14 10:26:04       17 阅读
  6. 数据库工程师选择题和主观题需要掌握的知识点

    2024-04-14 10:26:04       44 阅读
  7. 力扣爆刷第118天之CodeTop100五连刷76-80

    2024-04-14 10:26:04       21 阅读
  8. git使用记录

    2024-04-14 10:26:04       18 阅读
  9. php开发中如何防止抓包工具伪造请求

    2024-04-14 10:26:04       18 阅读