Leetcode 231. Power of Two

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

題意:判斷一個數(shù)字是不是2的整數(shù)次冪。

思路:2的整數(shù)次冪,包括2的0次冪,在二進(jìn)制表示中,所有bit位上只會有一個1。

  1. 可以通過用1從0到31不停右移統(tǒng)計(jì)1一共出現(xiàn)過幾次。
  2. 如果只有一個bit位是1,則n & (n-1)的結(jié)果是0。
    public boolean isPowerOfTwo(int n) {
        if (n <= 0) {
            return false;
        }
        return (n & (n - 1)) == 0;
    }
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • LeetCode 第 231 題:"Power of Two",相當(dāng)單純的題目。 Given an integer...
    就是91閱讀 407評論 0 0
  • 題意:判斷一個整數(shù)是否為2的次冪。解題:是2的次冪的整數(shù)為:1、2、4、8、16...其二進(jìn)制表示都是1000.....
    alexsssu閱讀 404評論 0 0
  • 原題 用 O(1) 時(shí)間檢測整數(shù) n 是否是 2 的冪次。 樣例n=4,返回 true;n=5,返回 false....
    Jason_Yuan閱讀 261評論 0 0
  • 題目大意: 判斷一個數(shù)是不是2的冪次方 解題思路: 觀察上面兩個表可以得出的結(jié)論是: 當(dāng)n%2==1&&n/2!=...
    努力努力再努力_姜姜閱讀 406評論 0 0
  • 11月11日咖啡冥想 1、今天周六,沒有去鍛煉,賴在床上,大約八點(diǎn),老公遛狗回家,問我早上吃什么?我說:今天早上咱...

友情鏈接更多精彩內(nèi)容