LeetCode(剑指 Offer)- 16. 数值的整数次方

简介: LeetCode(剑指 Offer)- 16. 数值的整数次方

题目链接:点击打开链接

题目大意:

解题思路

image.png

相关企业

  • 字节跳动
  • Facebook
  • 亚马逊(Amazon)
  • 彭博(Bloomberg)
  • 谷歌(Google)
  • 微软(Microsoft)
  • 优步(Uber)
  • 高盛集团(Goldman Sachs)
  • 苹果(Apple)
  • 领英(LinkedIn)

AC 代码

  • Java
// 解决方案(1)// 模拟版classSolution {
publicdoublemyPow(doublex, intn) {
longmaxn=n;
if (n==0||x==1) return1.0;
if (x==-1) returnn%2==0?1.0 : -1.0;
if (n<0&&-maxn>50) return0.0;
doubleres=1.0;
booleanflag=false;
if (n<0) {
n=-n;
flag=true;
        }
while (n--!=0) {
res*=x;
        }
if (flag) {
res=1.0/res;
        }
res= ((int)(res*100000+0.5)) /100000.0;
returnres;
    }
}
// 解决方案(2)// 快速幂版classSolution {
publicdoublemyPow(doublex, intn) {
if(x==0.0f) return0.0d;
longb=n;
doubleres=1.0;
if(b<0) {
x=1/x;
b=-b;
        }
while(b>0) {
if((b&1) ==1) res*=x;
x*=x;
b>>=1;
        }
returnres;
    }
}
  • C++
classSolution {
public:
doublemyPow(doublex, intn) {
if(x==0.0f) return0.0;
longb=n;
doubleres=1.0;
if(b<0) {
x=1/x;
b=-b;
        }
while(b>0) {
if((b&1) ==1) res*=x;
x*=x;
b>>=1;
        }
returnres;
    }
};
目录
相关文章
|
2月前
|
算法 Java
[Java·算法·简单] LeetCode 13. 罗马数字转整数 详细解读
[Java·算法·简单] LeetCode 13. 罗马数字转整数 详细解读
25 0
|
1月前
【Leetcode】两数之和,给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 target 的那 两个 整数,并返回它们的数组下标。
【Leetcode】两数之和,给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 target 的那 两个 整数,并返回它们的数组下标。
|
4天前
leetcode代码记录(整数拆分
leetcode代码记录(整数拆分
9 0
|
18天前
[leetcode~数位动态规划] 2719. 统计整数数目 hard
[leetcode~数位动态规划] 2719. 统计整数数目 hard
|
25天前
|
算法 DataX
二叉树(中)+Leetcode每日一题——“数据结构与算法”“剑指Offer55-I. 二叉树的深度”“100.相同的树”“965.单值二叉树”
二叉树(中)+Leetcode每日一题——“数据结构与算法”“剑指Offer55-I. 二叉树的深度”“100.相同的树”“965.单值二叉树”
|
26天前
|
算法 定位技术
【leetcode】剑指 Offer II 105. 岛屿的最大面积-【深度优先DFS】
【leetcode】剑指 Offer II 105. 岛屿的最大面积-【深度优先DFS】
17 0
|
27天前
|
存储 算法
leetcode1237. 找出给定方程的正整数解
leetcode1237. 找出给定方程的正整数解
8 0
|
2月前
leetcode2376. 统计特殊整数
leetcode2376. 统计特殊整数
15 1
|
2月前
|
Serverless
leetcode2719. 统计整数数目
leetcode2719. 统计整数数目
14 0
力扣2457 美丽整数最小增量
力扣2457 美丽整数最小增量

热门文章

最新文章