数值的整数次方(java版)
来源:互联网 发布:sql comment 编辑:程序博客网 时间:2024/06/03 08:13
【题目描述】给定一个double类型的浮点数base和int类型的整数exponent。求base的exponent次方。
【解题思路1】
//1.使用库函数
public class Solution { public double Power(double base, int exponent) { return Math.pow(base, exponent); }}
【解题思路2】
//1. 按照幂的定义。循环累乘。
//2. 注意,若给定的指数为负数,则返回累乘的倒数。
//3. 若给定的指数为零,则返回1。
//4. 底数若为零的情况。
public class Solution { public double Power(double base, int exponent) { double result = 1.000; int ex = Math.abs(exponent); boolean flag = true; if(exponent<0){ flag = false; } while(ex > 0){ result *= base; ex--; } if(flag == false){ result = 1/result; } return result; }}
【解题思路3】
//1.递归:n为偶数,a^n=a^n/2*a^n/2;n为奇数,a^n=(a^(n-1)/2)*(a^(n-1/2))*a
时间复杂度O(logn) public class Solution { public double Power(double base, int exponent) { int n=Math.abs(exponent); if(n==0) return 1; if(n==1) return base; double result=Power(base,n>>1); result*=result; if((n&1)==1) result*=base; if(exponent<0) result=1/result; return result; }}
阅读全文
0 0
- 数值的整数次方(java版)
- 【剑指offer-Java版】11数值的整数次方
- JAVA实现数值的整数次方(《剑指offern》)
- 剑指offer:数值的整数次方(java)
- JAVA实现数值的整数次方(《剑指offer》)
- 数值的整数次方
- 数值的整数次方
- 数值的整数次方
- 数值的整数次方
- 数值的整数次方
- 数值的整数次方
- 数值的整数次方
- 数值的整数次方
- 数值的整数次方
- 数值的整数次方
- 数值的整数次方
- 数值的整数次方
- 数值的整数次方
- FFMPEG学习【libavfilter】(二)
- jQuery Ajax Support: Basics
- linux下umount强行卸载设备
- 商品处理
- Docker学习笔记(3)-- 如何使用Dockerfile构建镜像
- 数值的整数次方(java版)
- CodeForces
- canny边缘检测
- Centos开启SSH
- MUI上拉加载下拉刷新
- TensorFlow里面mnist导入手写数据代码分析
- 魅族大数据之用户洞察平台介绍
- 秒杀高并发
- 在vs2017 上安装 arcgis 10.1 ArcObject sdk