[LeetCode]50、POW

题目描述

实现 pow(x, n) ,即计算 x 的 n 次幂函数。

示例 1:

输入: 2.00000, 10
输出: 1024.00000
示例 2:

输入: 2.10000, 3
输出: 9.26100
示例 3:

输入: 2.00000, -2
输出: 0.25000
解释: 2-2 = 1/22 = 1/4 = 0.25
说明:

-100.0 < x < 100.0
n 是 32 位有符号整数,其数值范围是 [−231, 231 − 1] 。

思路解析:

注意越界
注意n是否是偶数
注意n的正负号
注意x的正负号和0

class Solution:
    def myPow(self, x: float, n: int) -> float:
        if x == 0:
            return 0
        if n == 0:
            return 1
        if n < 0:
            return self.myPow(1/x, -n)
        if n & 1 == 1:
            return x * (self.myPow(x, n//2) ** 2)
        else:
            return self.myPow(x, n//2) ** 2
AC50
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Pow(x, n) 实现 pow(x, n) ,即计算 x 的 n 次幂函数。示例 1: 输入: 2.00000,...
    leacoder阅读 200评论 0赞 1
  • Type:medium Implementpow(x,n), which calculatesxraised to...
    萌小熙喵阅读 190评论 0赞 0
  • LeetCode 50 Pow(x, n) Implement pow(x, n). 遇到math类的题,比如po...
    ShuiLocked阅读 2,072评论 1赞 2
  • ** 题目描述:**实现 [pow(x, n)],即计算 x 的 n 次幂函数。 思路:采用分治的思想,将n次幂转...
    大数据Zone阅读 244评论 0赞 1
  • 今日是除夕,和家人一起回老家拜年,每年一次的团聚,一样的流程,不一样的心情。 亦如其他远嫁的姑娘,每年过年...
    喻言_d15c阅读 550评论 0赞 4

友情链接更多精彩内容