1、タイトル説明:
整数与えられ、それは2の累乗であるかどうかを決定するために関数を書きます。
実施例1:
入力:1つの
出力:真
説明:1 = 20
例2:
入力:16
出力:真の
説明:24 = 16
実施例3:
入力:218
出力:偽
実施例1:
入力:1つの
出力:真
説明:1 = 20
例2:
入力:16
出力:真の
説明:24 = 16
実施例3:
入力:218
出力:偽
2、思考:
言葉の力は2進数2 1の片側のみですので、あなたは数字が右に継続することができます。最初のものを除去した後、この時点で数が真、0であれば、そうでない場合はfalse
3、コード:
コードの表示
クラスソリューション{ パブリック ブール isPowerOfTwo(int型N){ 場合(N <= 0 ) を返す 偽。 一方、(N - ((N >>> 1)<< 1)= 1!){ N = N >>> 1 。 } もし、((N >>> 1)!= 0 ) を返す 偽。 他に 返す 真。 } }
図4に示すように、研究の焦点:ビット・コンピューティング
5、参考資料:なし
6、参照リンク:なし
7、タイトルリンクします。https://leetcode-cn.com/problems/power-of-two/