剑指offer 12. 数值的整数次方

Posted hi3254014978

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了剑指offer 12. 数值的整数次方相关的知识,希望对你有一定的参考价值。

12. 数值的整数次方

题目描述

给定一个double类型的浮点数base和int类型的整数exponent。求base的exponent次方。
保证base和exponent不同时为0

分析:

0的任何次幂都是0, 非零整数的 0 次幂都是1, 整数的 负数次幂等于 整数的倒数的正数次幂

最后判断指数的 奇 偶,返回不同的值

 1 public class Solution {
 2     public double Power(double base, int exponent) {
 3         // 边界条件
 4         if(base == 0)
 5             return 0;
 6         if(exponent == 0)
 7             return 1;        
 8         if(base == 1)
 9             return 1;
10         
11         // 如果 指数为负数,将底数取倒数,指数编程整数
12         if(exponent < 0){
13             base = 1 / base;
14             exponent = exponent * -1;
15         }
16         
17         double temp = Power(base, exponent / 2);
18         // 如果指数为奇数
19         if((exponent & 1) == 1){
20             return base * temp * temp;
21         }else{        // // 如果指数为偶数
22             return temp * temp;
23         }
24   }
25 }

 

以上是关于剑指offer 12. 数值的整数次方的主要内容,如果未能解决你的问题,请参考以下文章

剑指offer 12:数值的整数次方

剑指offer数值的整数次方

12剑指offer--数值的整数次方

剑指offer12数值的整数次方

剑指Offer 12. 数值的整数次方 (其他)

剑指offer系列——12.数值的整数次方