LeetCode如何解决数值的整数次方问题
发表于:2026-11-03 作者:千家信息网编辑
千家信息网最后更新 2026年11月03日,这篇文章主要介绍了LeetCode如何解决数值的整数次方问题,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。题目实现函数double P
千家信息网最后更新 2026年11月03日LeetCode如何解决数值的整数次方问题
这篇文章主要介绍了LeetCode如何解决数值的整数次方问题,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。
题目
实现函数double Power(double base, int exponent),求base的exponent次方。不得使用库函数,同时不需要考虑大数问题。
示例 1:
输入: 2.00000, 10输出: 1024.00000
示例 2:
输入: 2.10000, 3输出: 9.26100
示例 3:
输入: 2.00000, -2输出: 0.25000解释: 2-2 = 1/22 = 1/4 = 0.25
思路
n&1 (与操作): 判断 n 二进制最右一位是否为 1 ;
n>>1 (移位操作): n 右移一位(可理解为删除最后一位)
流程:
当 x=0 时:直接返回 0 (避免后续 x = 1 / x 操作报错)。
初始化 res = 1 ;
当 n < 0 时:把问题转化至 n≥0 的范围内,即执行 x = 1/x ,n = - n ;
循环计算:当 n = 0 时跳出;
当 n & 1 = 1 时:将当前 x乘入 res (即 res *= x);
执行 x = x^2(即 x *= x);
执行 n右移一位(即 n>>=1)。
返回 res
代码
class Solution { public double myPow(double x, int n) { if(x == 0){ return 0; } long b = n; double res = 1.0; //处理负数 if(b < 0){ x = 1/x; b = -b; } while(b > 0){ if((b & 1) == 1){ res *= x; } x *= x; b >>= 1; } return res; }}感谢你能够认真阅读完这篇文章,希望小编分享的"LeetCode如何解决数值的整数次方问题"这篇文章对大家有帮助,同时也希望大家多多支持,关注行业资讯频道,更多相关知识等着你来学习!
问题
篇文章
示例
输入
输出
数值
整数
函数
同时
二进制
代码
价值
兴趣
大数
思路
更多
朋友
流程
知识
编带
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
网络科技有限互联网
互联网科技公司怎么样
互联网 的科技创新
九亚互联网科技
苏州互联网科技贷款公司
腾讯科技 互联网女皇
长亮科技 互联网金融
撒么互联网科技公司
成都狮子座互联网科技
顺网科技2021年互联网排名
广西拼得多互联网科技有限公司
央行互联网金融科技公司
移动互联网科技公司
互联网保险科技创业
东莞新华互联网科技学校
电子商务与互联网科技的关系
半导体行业属于互联网高科技类吗
广东鹅鹅鹅互联网科技有限公司
互联网对科技影响
颐高云石互联网科技
今日互联网科技
互联网科技有限公司经营范围
互联网科技论坛
来此购互联网科技有限公司
燊美集互联网科技有限公司
畅思互联网科技
科技大学互联网
工业互联网展湾科技股份有限公司
青岛互联网科技园
互联网科技企业文化