问题描述
Given an integer, write a function to determine if it is a power of three.
*思路1:*
/**
* @param {number} n
* @return {boolean}
*/
var isPowerOfThree = function(n) {
if(n == 1){
return true;
}
else{
while(n>=3){
n = n/3;
}
if(n == 1){
return true;
}
else{
return false;
}
}
};
思路2: 优化了一下,先排除那些对3求模不为0的数字
/**
* @param {number} n
* @return {boolean}
*/
var isPowerOfThree = function(n) {
if(n===1){
return true;
}
while(n>0){
if(n%3===0){
if(n/3===1){
return true;
}
else{
n/=3;
}
}
else{
return false;
}
}
if(n===0||n<0){
return false;
}
};