当前位置:网站首页>剑指 Offer 16. 数值的整数次方
剑指 Offer 16. 数值的整数次方
2022-08-03 21:00:00 【愈努力俞幸运】
剑指 Offer 16. 数值的整数次方https://leetcode.cn/problems/shu-zhi-de-zheng-shu-ci-fang-lcof/
与运算与位运算可以参考
暴力求解会超时
class Solution:
def myPow(self, x, n):
res=1
if n>=0:
for i in range(n):
res=res*x
return res
else:
for i in range(-1*n):
res=res*x
return 1/res
怎么就算X的次幂,每次循环令x=x*x即可
class Solution:
def myPow(self, x, n):
res=1
if n>=0:
while n:
if n&1:#判断n的二进制最后一位是否为1
res=res*x
x*=x
else: x*=x
n=n>>1
else:
n=-n
x=1/x
while n:
if n&1:#判断n的二进制最后一位是否为1,等同于n%2
res=res*x
x*=x
else: x*=x
n>>=1#等同于n//2
return res
a=Solution()
print(a.myPow(2,10))
print(a.myPow(2,-2))
边栏推荐
猜你喜欢
随机推荐
字节跳动软件测试岗,前两面过了,第三面HR天坑,结局透心凉...
李沐动手学深度学习V2-BERT微调和代码实现
为什么 BI 软件都搞不定关联分析
leetcode 16.01. 交换数字(不使用临时变量交换2个数的值)
XSS线上靶场---prompt
leetcode 268. Missing Numbers (XOR!!)
敏捷交付的工程效能治理
5 款漏洞扫描工具:实用、强力、全面(含开源)
leetcode 16. 数值的整数次方(快速幂+递归/迭代)
Leetcode sword refers to Offer 15. 1 in the binary number
ES6解构赋值--数组解构及对象解构
华为设备配置VRRP与BFD联动实现快速切换
idea2021配置svn报错Cannot run program “svn“ (in directory “xxx“):CreateProcess error=2,系统找不到指定的文件
NAACL 2022 | 具有元重加权的鲁棒自增强命名实体识别技术
解决This application failed to start because no Qt platform plugin could be initialized的办法
化算力为战力:宁夏中卫的数字化转型启示录
chart.js多条曲线图插件
Likou 707 - Design Linked List - Linked List
简单又有效的基本折线图制作方法
Engineering Effectiveness Governance for Agile Delivery