LeetCode每日一题——Pow(x, n)

题目要求:

实现 pow(x, n) ,即计算 x 的整数 n 次幂函数(即,xn )。

示例 1:

复制代码
输入:x = 2.00000, n = 10
输出:1024.00000

示例 2:

复制代码
输入:x = 2.10000, n = 3
输出:9.26100

示例 3:

复制代码
输入:x = 2.00000, n = -2
输出:0.25000
解释:2-2 = 1/22 = 1/4 = 0.25

代码实现:

double myPow(double x, int N) {

double ans = 1;

long long n = N;

if (n < 0) { // x^-n = (1/x)^n

n = -n;

x = 1 / x;

}

while (n) { // 从低到高枚举 n 的每个比特位

if (n & 1) { // 这个比特位是 1

ans *= x; // 把 x 乘到 ans 中

}

x *= x; // x 自身平方

n >>= 1; // 继续枚举下一个比特位

}

return ans;

}

作者:灵茶山艾府

来源:力扣(LeetCode)

坚持编程,我一直在路上!

相关推荐
唯道行1 天前
计算机图形学·23 Weiler-Athenton多边形裁剪算法
算法·计算机视觉·几何学·计算机图形学·opengl
CoderYanger1 天前
动态规划算法-01背包问题:50.分割等和子集
java·算法·leetcode·动态规划·1024程序员节
花月C1 天前
个性化推荐:基于用户的协同过滤算法
开发语言·后端·算法·近邻算法
lxh01131 天前
最长递增子序列
前端·数据结构·算法
Youyzq1 天前
前端项目发布到cdn上css被编译失效问题rgba失效和rgb失效
前端·css·算法·cdn
风筝在晴天搁浅1 天前
代码随想录 516.最长回文子序列
算法
菜鸟233号1 天前
力扣513 找树左下角的值 java实现
java·数据结构·算法·leetcode
亭上秋和景清1 天前
指针进阶:函数指针详解
开发语言·c++·算法
leoufung1 天前
LeetCode 22:Generate Parentheses 题解(DFS / 回溯)
算法·leetcode·深度优先
FMRbpm1 天前
队列练习--------最近的请求次数(LeetCode 933)
数据结构·c++·leetcode·新手入门