幂和对数是数学上的内容,这部分的知识在我们高中的时候也已经有所涉及,在这里我也就不和大家详细介绍太多啦!
今天的题目呢也是一些和幂相关的,可以帮助我们更加深入理解其在代码编程中的应用,除此之外呢,因为今天是第一讲,这部分的内容其实也会涉及到一些位运算的内容,有了解或者感兴趣的大家可以自行尝试一下,但是今天的话解题的方法还是从最基本的出发的。
231.2的幂
class Solution: def isPowerOfTwo(self,n:int)->bool: if n<0: return False for i in range(31): if n==2**i: return True return False
算法题目的入门题目,涉及到了数学知识的应用;
同时也是一道可以多解的题目,虽然简单,但包含的东西也不少;
考虑到今天是入门,我们先不考虑位运算的解法,而使用最简单的方法来求解;
1)了解题目范围,因为最多不能超过2的31次方,所以以此为循环界限;
2)使用if判断语句,直到找到结果输出布尔类型True;循环结束未找到则输出False。
326.3的幂
class Solution: def isPowerOfThree(self,n:int)->bool: if n<0: return False for i in range(20): if n==3**i: return True return False
该题思路与上题类似,注意3为底时指数不能超过20。
342.4的幂
class Solution: def isPowerOfFour(self,n:int)->bool: if n<0: return False for i in range(16): if n==4**i: return True return False
该题思路与以上两个类似,需要注意的是底为四时指数不能超过16。
凡事贵在坚持,有兴趣的可以去看一下英雄哥(昵称为:英雄哪里出来)的相关文章,一定会有所收获的!
最后,看到这里了,点个赞再走吧!
或者关注一下也行,我也会持续更新与python相关的内容!