LeetCode之旅(20)-Power of Three

时间:2023-11-30 15:19:56

题目:

Given an integer, write a function to determine if it is a power of three.

Follow up:
Could you do it without using any loop / recursion?

思路:

这个问题是求一个数是不是3的次方数,可以有两种解法:

1.采用余数的算法

2.利用了java 的对数运算,判断3的对象是否实在整数,其中用到了换底公式

代码1

public class Solution {
    public boolean isPowerOfThree(int n) {
        if(n <= 0){
            return false;
        }else{
            while(n % 3 == 0){
                n = n/3;
            }
            return n == 1;
        }
    }
}