本文主要是介绍[LeetCode] 50. Pow(x, n),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
题目内容
https://leetcode-cn.com/problems/powx-n/
实现 pow(x, n) ,即计算 x 的 n 次幂函数。
题目思路
这道题目包含两种思想。第一种就是迭代求解,第二种是递归。他们的核心思路都是减少乘的次数。比如pow(3,10)等于pow(9,5),也等于pow(9,4)*9等于pow(81,2)*9。一次类推,直到pow(y,1)*p,直接用y*p即可得到答案。
程序代码
class Solution(object):def myPow(self, x, n):""":type x: float:type n: int:rtype: float"""flag=0if n<0:n=-nflag=-1if n==0:return 1res=1while n:if n%2==0:n=n/2x=x*xif n%2==1:n=n/2res=res*xreturn res
这篇关于[LeetCode] 50. Pow(x, n)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!