给定一个整数,写一个函数来判断它是否是 3 的幂次方。
示例 1: 输入: 27 输出: true
示例 2: 输入: 0 输出: false
示例 3: 输入: 9 输出: true
示例 4: 输入: 45 输出: false
解题思路:这是一道简单的数学题,先判断数字n是否为1,若为1,则返回true;再判断n是否为0,若为0,则返回false。若n为其他数,判断n%3是否为0,若不为0,进行函数递归,调用isPowerOfThree()函数,直至n=0或n=1,递归结束。
/**
* @param {number} n
* @return {boolean}
*/
var isPowerOfThree = function(n) {
if (n == 1)
return true;
else if (n == 0)
return false;
else if (n%3 == 0)
return isPowerOfThree(n/3);
else
return false;
};