指数幂+力扣

题目

题目链接

. - 力扣(LeetCode)

题目描述

代码实现

class Solution {
public:double myPow(double x, int n) {long t = n;return t >= 0 ? _myPow(x, t) : 1 / _myPow(x, -t);}double _myPow(double x, int n){if(n == 0)  return 1;double y = _myPow(x, n / 2);//算出幂的一半的值return n % 2 == 0 ? y * y : y * y * x;}
};

思路分析

我们这里用的是递归思路。这里可以将递归函数看作是一个黑盒,可以完成我们想要的需求,在本道题即能够算出幂的一半的值

1、偶数次幂等于两个指数一半相乘奇数次幂等于两个指数一半相乘再乘上一个底数

2、当是一个负数的时候,将指数转换成为正数求出结果,然后再用1除以这个结果。

3、这个题指数的范围是-2的31次幂,所以int类型是存不下的,再开始的时候就将n转换成为long类型存储。

4、最后考虑递归出口,也就是指数等于0的时候,返回1即可。

可以参考下边的图示。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/726526.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

docker安装与配置-网络方式ftp方式

说明: 本文环境:CentOS 7 1、#ip地址配置(在xnode2的基础上) [rootxnode2 ~]# cat /etc/sysconfig/network-scripts/ifcfg-eno16777736TYPEEthernetBOOTPROTOstaticDEFROUTEyesPEERDNSyesPEERROUTESyesIPV4_FAILURE_FATALnoIPV6INITyesIPV6_AUTOCONF…

Python 文件基础科普与文件打开技术详解【第117篇—文件打开技术】

Python 文件基础科普与文件打开技术详解 在Python编程中,文件操作是一项基础而重要的任务。无论是读取数据、写入文件还是进行其他文件处理操作,都需要对文件基础知识有一定的了解。在本文中,我们将首先介绍Python文件的基础概念&#xff0c…

哈希专题 - leetcode 1. 两数之和 - 简单难度

leetcode 1. 两数之和 leetcode 1. 两数之和 简单难度 哈希1. 题目详情1. 原题链接2. 基础框架 2. 解题思路1. 题目分析2. 算法原理3. 时间复杂度 3. 代码实现4. 知识与收获 leetcode 1. 两数之和 简单难度 哈希 1. 题目详情 给定一个整数数组 nums 和一个整数目标值 target…

【贪心算法】 55. 跳跃游戏

55. 跳跃游戏 解题思路 定义变量 n 来存储数组 nums 的长度。初始化 farthest 变量为 0,用于记录当前能够到达的最远距离。使用一个 for 循环遍历数组,但是不包括数组的最后一个元素,因为我们的目标是看是否能到达最后一个位置。在循环内部…

抽奖小程序怎么在线制作_引爆你的营销活动

抽奖小程序,轻松在线制作,引爆你的营销活动! 在如今数字化时代,营销方式层出不穷,如何快速吸引用户眼球,提高品牌知名度,成为每个企业关注的焦点。今天,我要向大家介绍一款神奇的工…

用xshell7连接服务器,读取后台日志

有时候前端需要读取一些后台日志,比如,有时候接一些验证码啥的 或者有时候前后端不分离时,前端上线项目 先讲一下怎么用密码方式连接服务器 密码方式连接服务器 第一步,安装xshell,在新建会话中填写主机&#xff0…

Linux 下安装 Git

Linux 下安装 Git 1 参考2 安装2.1 通过 yum方式安装(不推荐)2.2 通过源码编译安装(推荐) 3 配置SSH 1 参考 Linux 下安装 Git 2 安装 2.1 通过 yum方式安装(不推荐) 在Linux上安装git仅需一行命令即可…

11 |「异步任务与多线程」

前言 实践是最好的学习方式,技术也如此。 文章目录 前言一、同步和异步的概念1、同步和异步任务2、线程 二、Android 多线程与 Handler 机制1、分类2、原则3、Handler 机制1)问题(背景)2)Handler 异步通信系统3&#x…

重塑生产格局:新质生产力引领下的新型工业操作系统和工业母机创新动向

新质生产力是创新起主导作用,摆脱传统经济增长方式、生产力发展路径,具有高科技、高效能、高质量特征,符合新发展理念的先进生产力质态。 **风口情报:**近日,中央经济工作会议首次提出“发展新质生产力”;…

glob path(python库)

glob 这里有两种方法导入glob mport glob #导入整个glob模块 from glob import golb #从glob模块导入glob函数 三种通配符 *代表0个或多个字符?代表一个字符[]匹配指定范围内的字符,如[0-9]匹配数字 #1、定义一个函数,搜索C盘下的所有文件和目录&…

作业1-32 P1059 [NOIP2006 普及组] 明明的随机数

题目 思路 根据题意&#xff0c;需要将读入的数据排序&#xff0c;去重。 参考代码 #include<bits/stdc.h> using namespace std; int n,a[5000],k;int main() {while(cin>>n){//读入数据for(int i0;i<n;i)cin>>a[i];sort(a,an);//排序int b[5000];in…

牛客 NC244138 剩下的数

链接&#xff1a;https://ac.nowcoder.com/acm/problem/244138 来源&#xff1a;牛客网 题目描述 牛牛有一个由 l … r l…r l…r 共 r − l 1 r−l1 r−l1 个整数组成的环。 牛妹对这个数环进行了 m m m 次询问&#xff0c;每次给定一个整数 x x x 问牛牛操作到不能继续…

python实例

设计者&#xff1a;ISDF工软未来 版本&#xff1a;v1.0 日期&#xff1a;2024/3/7 class Restaurant:餐馆类def __init__(self,restaurant_name,cuisine_type):#类的属性self.restaurant_name restaurant_nameself.cuisine_type cuisine_typeself.number_served 0def descri…

深度学习需要掌握哪些数学基础?

《深度学习的数学》这本书再合适不过了。作者罗纳德.T.纽塞尔&#xff08;Ronald T. Kneusel&#xff09;&#xff0c;拥有超过 20年的机器学习行业经验。 本书适合有一定深度学习基础、了解Python编程语言的读者阅读&#xff0c;也可作为用于拓展深度学习理论的参考书。 为什么…

贪心 Leetcode 738 单调递增的数字

单调递增的数字 Leetcode 738 学习记录自代码随想录 当且仅当每个相邻位数上的数字 x 和 y 满足 x < y 时&#xff0c;我们称这个整数是单调递增的。 给定一个整数 n &#xff0c;返回 小于或等于 n 的最大数字&#xff0c;且数字呈 单调递增 。 示例 1: 输入: n 10 输…

CKA考试必备:解锁Pod封装多容器的高级技巧!

往期精彩文章 : 提升CKA考试胜算&#xff1a;一文带你全面了解RBAC权限控制&#xff01;揭秘高效运维&#xff1a;如何用kubectl top命令实时监控K8s资源使用情况&#xff1f;CKA认证必备&#xff1a;掌握k8s网络策略的关键要点提高CKA认证成功率&#xff0c;CKA真题中的节点维…

Numpy中常用函数np.clip和np.finfo

NumPy&#xff08;Numerical Python&#xff09;是Python科学计算的核心库之一&#xff0c;提供了高性能的多维数组对象&#xff08;ndarray&#xff09;以及用于数组操作的各种函数和工具。 np.finfo finfo函数是根据括号中的类型来获得信息&#xff0c;获得符合这个类型的数…

【MySQL】用户管理 -- 详解

如果我们只能使用 root 用户&#xff0c;这样存在安全隐患。这时就需要使用 MySQL 的用户管理。 一、 用户 1、用户信息 MySQL 中的用户都存储在系统数据库 MySQL 的 user 表中。 字段解释&#xff1a; host&#xff1a;表示这个用户可以从哪个主机登陆&#xff0c;如果…

【三】【SQL Server】如何运用SQL Server中查询设计器通关数据库期末查询大题

数据库学生选择1122 数据库展示 course表展示 SC表展示 student表展示 数据库学生选课1122_1 第一题 第二题 第三题 第四题 第五题 数据库学生选课1122_2 第六题 第七题 第八题 第九题 第十题 结尾 最后&#xff0c;感谢您阅读我的文章&#xff0c;希望这些内容能够对您有所启…

修改MySQL字段类型 DECIMAL 小数点后面位数

1&#xff0c;下面是修改表字段的SQL语句&#xff1a; ALTER TABLE 表名称 MODIFY 字段名称 DECIMAL(10,5) COMMENT 说明; 2&#xff0c;浮点型: float(255,30): 单精度&#xff0c;总长度是255&#xff0c;小数位是30。 double(255,30):双精度&#xff0c;总长度是255&#…