(Java)LeetCode-50. Pow(x, n)
来源:互联网 发布:小语网络加速器 编辑:程序博客网 时间:2024/06/07 06:27
Implement pow(x, n).
这道题最慢时间复杂度也是O(n),快一些的是O(logn),主要是将n考虑为二进制的形式,某一位是1的话,就乘上相应的次方数即可。代码如下:
public class Solution { public double myPow(double x, int n) { if(x == 1.0){ return x; } double sum = 1;double temp = x;boolean flag = false;if(n < 0){ flag = true; n = -n;}while(n != 0){if(n % 2 == 1){sum = sum * temp;}temp = temp * temp;n = n >>> 1; }if(flag == false) return sum; else return 1/sum; }}
public class Solution { public double pow(double x, int n) { if(n == 0) return 1; if(n<0){ n = -n; x = 1/x; } return (n%2 == 0) ? pow(x*x, n/2) : x*pow(x*x, n/2); }}
0 0
- 50. Pow(x, n)-leetcode-java
- (Java)LeetCode-50. Pow(x, n)
- [Leetcode] Pow(x, n) (Java)
- [LeetCode][Java] Pow(x, n)
- leetcode:Pow(x, n) 【Java】
- [LeetCode]50.Pow(x, n)
- LeetCode --- 50. Pow(x, n)
- [Leetcode] 50. Pow(x, n)
- [leetcode] 50.Pow(x, n)
- LeetCode 50. Pow(x, n)
- 50. Pow(x, n) LeetCode
- [leetcode] 50. Pow(x, n)
- Leetcode 50. Pow(x, n)
- [LeetCode]50. Pow(x, n)
- LeetCode *** 50. Pow(x, n)
- LeetCode 50. Pow(x, n)
- LeetCode 50. Pow(x, n)
- 【LeetCode】50. Pow(x, n)
- phpstorm激活方法
- 【codeforces 721C】【DAG 按照拓扑排序记忆化DFS】C. Journey 【DAG图,5000个点,5000条边 让你求从1到n的路径长度不超过T中经过点数最多的一条 】
- HDU 5833 Zhu and 772002(异或方程组高斯消元)
- LeetCode 405 Convert a Number to Hexadecimal
- 适配器模式
- (Java)LeetCode-50. Pow(x, n)
- Python:class类
- forward和param动作
- linux 终端命令大全
- 动态链接库的使用
- cglib代理
- C++/STL bitset
- 自己DIY一个智能家居模型框架--DHT11驱动
- Android 性能优化——布局优化