【LeetCode]☆パワー(IF電源4)〜342.4

説明

整数(32ビットの符号付き整数)が与えられると、それは4のパワーであるかどうかを決定するために関数を書きます。

例1:

入力:16
出力:真の
例2:

入力:5
出力:偽

高度:
あなたが再帰ループを使用することはできませんか、この質問それを完了するために?

解決

数が32 4への電源である場合にのみ、奇数ビット1つのみを有し、偶数ビットは0です。条件を決定します。

計算結果をどう0xaaaaaaaa 1. 0です。(= 1010 A)

2. NUM&(NUM - 1)== 0、1記載のつのみ

コード

パブリック ブール isPowerOfFour(int型NUM){
         場合(NUM == 0 ){
             戻り 
        } 
        もし、(((NUM&0xaaaaaaaa)== 0)&&(NUM&(NUM - 1))== 0 ){
             戻り 
        } {
             戻り 
        } 
    }
パブリック ブール isPowerOfFour(INT NUM){
         もし、(((NUM&0xaaaaaaaa)== 0)&&(Integer.bitCount(NUM)== 1 )){
             戻り 
        } {
             戻り 
        } 
    }

 

おすすめ

転載: www.cnblogs.com/fanguangdexiaoyuer/p/11366495.html