每天一道leetcode之入门

Day8. Power of Three(326)

2017-11-09  本文已影响0人  前端伊始

问题描述
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;
    }   
};
上一篇下一篇

猜你喜欢

热点阅读