博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
leetCode 50.Pow(x, n) (x的n次方) 解题思路和方法
阅读量:4341 次
发布时间:2019-06-07

本文共 1075 字,大约阅读时间需要 3 分钟。

Pow(x, n) 

Implement pow(x, n).

思路:题目不算难。可是须要考虑的情况比較多。

详细代码例如以下:

public class Solution {    public double myPow(double x, int n) {    	boolean isMin0 = true;//结果负号    	if(x > 0 || (n&1) == 0){//x>0或n为偶数    		isMin0 = false;//为正    	}    	x = x < 0 ? -x:x;//将x统一设为正值        double d = 1.0;    	if(n > 0){//n分三种情况            while(n > 0){                d = d*x;                n--;            	if((Math.abs(d - 1.0) < 1e-15)){            		d = 1.0;//默认等于1            		break;            	}else if((Math.abs(d) < 1e-15)){            		d = 0;//默认等于0            		break;            	}            }    	}else if(n == 0){    		return 1;    	}else{    		while(n < 0){    			d = d/x;    			n++;            	if((Math.abs(d - 1.0) < 1e-15)){            		d = 1;            		break;            	}else if((Math.abs(d) < 1e-15)){            		if(isMin0){//除数等于0。将等于正负无穷            			return Double.MIN_VALUE;            		}else{            			return Double.MAX_VALUE;            		}            	}    		}    	}		return isMin0?-d:d;    }}

转载于:https://www.cnblogs.com/wzjhoutai/p/6776884.html

你可能感兴趣的文章
阶段3 2.Spring_03.Spring的 IOC 和 DI_4 ApplicationContext的三个实现类
查看>>
阶段3 2.Spring_02.程序间耦合_8 工厂模式解耦的升级版
查看>>
阶段3 2.Spring_03.Spring的 IOC 和 DI_6 spring中bean的细节之三种创建Bean对象的方式
查看>>
阶段3 2.Spring_04.Spring的常用注解_2 常用IOC注解按照作用分类
查看>>
阶段3 2.Spring_09.JdbcTemplate的基本使用_5 JdbcTemplate在spring的ioc中使用
查看>>
阶段3 3.SpringMVC·_07.SSM整合案例_02.ssm整合之搭建环境
查看>>
小D课堂 - 零基础入门SpringBoot2.X到实战_第1节零基础快速入门SpringBoot2.0_3、快速创建SpringBoot应用之手工创建web应用...
查看>>
小D课堂 - 零基础入门SpringBoot2.X到实战_第1节零基础快速入门SpringBoot2.0_5、SpringBoot2.x的依赖默认Maven版本...
查看>>
阶段3 3.SpringMVC·_07.SSM整合案例_08.ssm整合之Spring整合MyBatis框架
查看>>
小D课堂 - 零基础入门SpringBoot2.X到实战_第2节 SpringBoot接口Http协议开发实战_9、SpringBoot基础HTTP其他提交方法请求实战...
查看>>
小D课堂 - 零基础入门SpringBoot2.X到实战_第2节 SpringBoot接口Http协议开发实战_12、SpringBoot2.x文件上传实战...
查看>>
小D课堂 - 零基础入门SpringBoot2.X到实战_第4节 Springboot2.0单元测试进阶实战和自定义异常处理_19、SpringBoot个性化启动banner设置debug日志...
查看>>
小D课堂 - 零基础入门SpringBoot2.X到实战_第4节 Springboot2.0单元测试进阶实战和自定义异常处理_20、SpringBoot2.x配置全局异常实战...
查看>>
小D课堂 - 零基础入门SpringBoot2.X到实战_第5节 SpringBoot部署war项目到tomcat9和启动原理讲解_23、SpringBoot2.x启动原理概述...
查看>>
小D课堂 - 零基础入门SpringBoot2.X到实战_第4节 Springboot2.0单元测试进阶实战和自定义异常处理_21、SpringBoot2.x配置全局异常返回自定义页面...
查看>>
小D课堂 - 零基础入门SpringBoot2.X到实战_第8节 数据库操作之整合Mybaties和事务讲解_32..SpringBoot2.x持久化数据方式介绍...
查看>>
小D课堂 - 零基础入门SpringBoot2.X到实战_第8节 数据库操作之整合Mybaties和事务讲解_34、SpringBoot整合Mybatis实操和打印SQL语句...
查看>>
小D课堂 - 零基础入门SpringBoot2.X到实战_第8节 数据库操作之整合Mybaties和事务讲解_35、事务介绍和常见的隔离级别,传播行为...
查看>>
小D课堂 - 零基础入门SpringBoot2.X到实战_第9节 SpringBoot2.x整合Redis实战_40、Redis工具类封装讲解和实战...
查看>>
小D课堂 - 零基础入门SpringBoot2.X到实战_第9节 SpringBoot2.x整合Redis实战_37、分布式缓存Redis介绍...
查看>>