题目链接:https://leetcode.com/problems/power-of-three/
Given an integer, write a function to determine if it is a power of three.
有两种解法:非递归和递归,分别如下:
class Solution {
public:
bool isPowerOfThree(int n) {
if(n==1 || n==3) return true;
while(n>9 && n%9==0) {
n=n/9;
}
if(n==1 || n==3 || n==9) return true;
else return false;
}
};
public class Solution {
public boolean isPowerOfThree(int n) {
if(n==1 || n==3) return true;
if(n<3) return false;
if(n%3 != 0) return false;
else {
n=n/3;
return isPowerOfThree(n);
}
}
}
第342题Power Of Four 和本题类似,就不写了