给定一个带符号整数,写一个函数判断它是否是4的幂
Example:
Given num = 16, return true. Given num = 5, return false.
进阶:
你能不用循环或者递归完成本题么?
1:累除4
循环
def isPowerOfFour(self, num):
"""
:type num: int
:rtype: bool
"""
if num <= 0:
return False
while num % 4 == 0:
num //= 4
return num == 1
递归
def isPowerOfFour(self, num):
"""
:type num: int
:rtype: bool
"""
if num <= 0:
return False
if num == 1:
return True
if num % 4 != 0:
return False
return self.isPowerOfFour(num // 4)
算法题来自:https://leetcode-cn.com/problems/power-of-four/description/
本文介绍了一种方法,用于判断一个给定的整数是否可以表示为4的幂次方。提供了两种解决方案,一种是使用循环进行累除4的操作,另一种是采用递归方式实现。这两种方法都首先检查输入的整数是否小于等于0,如果是,则直接返回False;如果整数等于1,返回True;否则继续检查该整数是否能被4整除。
983

被折叠的 条评论
为什么被折叠?



