怎么用python实现一个指数运算

技术怎么用python实现一个指数运算本篇内容主要讲解“怎么用python实现一个指数运算”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么用python实现一个指数运算”吧

本文主要讲解“如何用python实现指数运算”。感兴趣的朋友不妨看看。本文介绍的方法简单、快速、实用。让边肖带你学习如何用python实现指数运算。

这个题目很简单,就是实现一个指数运算方法,但是对递归次数和运算时间有限制。

指数运算,即幂(x,n),其中x可以是浮点数。如果x的输入为2.000,n的输入为10,将返回1024.000。其中指数n可以是负的。

输入: 2.00000,10

输出: 1024.00000

其实python默认内置的指数计算符号是* *,比如上面是2.000 * * 10;即使是直接用return x**n提交,也通过了,速度快于62%的时间。

当然,想想也不太好。想一想,产品一个个的直接计算,一定要超出运营效率的约束。你可以用二分法,比如幂(x,n)。如果n为偶数,则可分为幂(x,n/2) *幂(x,n/2)。如果n不是偶数,就乘以x,其他的都是偶数。然后采用缓存字典的方法来避免重复计算。

在后来的计算中,发现每次(x,n)计算不同时,测试系统都不会创建新的对象来刷新缓存字典,这导致第二个(x,n)使用第一个缓存字典。因此,字典每次是新的(x,n)都会被缓存。

提交后发现比提交答案的87%都快。与python自带的n**x相比,它也更快。

代码如下:

类别解决方案:

cacheDict={}

defmyRecursion(self,x,n):

IFN self . cachedict . keys():

returnself.cacheDict[n]

ifn%2==1:

product re=self . myre version(x,(n-1)/2)* self . myre version(x,(n-1)/2)*x

else:

productRe=self . myre version(x,n/2)* self . myre version(x,n/2)

self . cachedict[n]=ProducRe

returnproductRe

defmyPow(self,x,n)-float:

ifn0:

self.cacheDict={0:1,1:1/x}

return self . MyResurversion(1.0/x,abs(n))

else:

self.cacheDict={0:1,1:x}

回归自我。我的循环(x,n)在这里。相信大家对“如何用python实现指数运算”有了更深的理解。让我们在实践中去做吧!这是网站。更多相关内容,可以进入相关渠道查询,关注我们,继续学习!

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/67432.html

(0)

相关推荐

  • win7下如何安装mysql5.7.16

    技术win7下如何安装mysql5.7.16这篇文章主要介绍了win7下如何安装mysql5.7.16,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。1:

    攻略 2021年11月6日
  • SQL Server中SQL语句的执行效率查看方法

    技术SQL Server中SQL语句的执行效率查看方法 SQL Server中SQL语句的执行效率查看方法之前在练习SQL查询的时候,对于同一个需求可以通过不同的sql语句得到想要的数据。所以想知道不同

    礼包 2021年11月23日
  • 怎么解决SQL中报错ORA-16038问题

    技术怎么解决SQL中报错ORA-16038问题这篇文章主要讲解了“怎么解决SQL中报错ORA-16038问题”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“怎么解决SQL中

    攻略 2021年11月9日
  • C++怎么定义变量的引用

    技术C++怎么定义变量的引用本篇内容介绍了“C++怎么定义变量的引用”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!数组的

    攻略 2021年11月30日
  • 山药鸡蛋饼的做法,山药糯米粉鸡蛋怎样做好吃

    技术山药鸡蛋饼的做法,山药糯米粉鸡蛋怎样做好吃你好非常感谢你提的问题山药鸡蛋饼的做法,是我的回答希望可以解决你的问题,首先我们先准备一些山药,糯米,黑芝麻,红枣,红糖,鸡蛋。然后把山药给清洗干净,再清洗干净以后我们把山药

    生活 2021年10月24日
  • ESP32读取串口传感器数据

    技术ESP32读取串口传感器数据 ESP32读取串口传感器数据最近拿到一个九轴陀螺仪传感器,如图:该设备通过串口方式输出九轴数据,可用官方自带得上位机或者是sscom看到数据,官网提供了很多例程,但唯独

    礼包 2021年12月9日