zoukankan      html  css  js  c++  java
  • Pow(x,n) leetcode java

    题目:

     Implement pow(x, n).

    题解:

    pow(x,n)就是求x的n次方。x的N次方可以看做:x^n = x^(n/2)*x^(n/2)*x^(n%2)。所以利用递归求解,当n==1的时候,x^n=x。

    当然n是可以小于0的,2^(-3) = 1/(2^3)。按照上面那个规律就可以解决了。

    代码如下:

     1     public double power(double x, int n) {
     2         if (n == 0)
     3             return 1;
     4  
     5         double v = power(x, n / 2);
     6  
     7         if (n % 2 == 0) {
     8             return v * v;
     9         } else {
    10             return v * v * x;
    11         }
    12     }
    13  
    14     public double pow(double x, int n) {
    15         if (n < 0) {
    16             return 1 / power(x, -n);
    17         } else {
    18             return power(x, n);
    19         }
    20     }

     Reference: http://fisherlei.blogspot.com/2012/12/leetcode-powx-n.html

  • 相关阅读:
    java笔记前端部分
    java笔记数据库部分
    java笔记javaweb部分
    java笔记java部分
    JSON常用方法
    MYSQL索引
    Mysql查看执行计划参数解析(转载)
    MySQL中使用SHOW PROFILE命令分析性能的用法
    MySql查询
    DBeaver下载
  • 原文地址:https://www.cnblogs.com/springfor/p/3870929.html
Copyright © 2011-2022 走看看