LeetCode#342 Power of Four

問題描述

Given an integer (signed 32 bits), write a function to check whether it is a power of 4.

Example:
Given num = 16, return true. Given num = 5, return false.

Follow up: Could you solve it without loops/recursion?

補(bǔ)充說明:

給定一個32位的整數(shù)择示,判斷這個數(shù)是否為4的幾次冪。

方案分析

  1. 首先看到這個題目能想到的是如何判斷一個數(shù)是不是2的幾次冪牢裳。
  2. 先分析2的幾次冪的問題音诈,通常會采用位操作的方式:(num & (num -1)) == 0
  3. 分析是否是4的幾次冪灼舍,其實(shí)思想類似,但需要注意兩點(diǎn):
  • 4的幾次冪關(guān)注的二進(jìn)制位為偶數(shù)位,如1,3,5,7...31(從0開始)——對應(yīng)的16進(jìn)制為0x55555555吨娜;
  • 不能只局限關(guān)注偶數(shù)位的值麻顶,還需要借助2的幾次冪的問題確保其他位不為1.

python實(shí)現(xiàn)

class Solution(object):
    def isPowerOfFour(self, num):
        """
        :type num: int
        :rtype: bool
        """
        return (num > 0) and ((num & (num-1)) == 0) and ((num & 0x55555555) == num)
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末赦抖,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子辅肾,更是在濱河造成了極大的恐慌队萤,老刑警劉巖,帶你破解...
    沈念sama閱讀 217,826評論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件矫钓,死亡現(xiàn)場離奇詭異要尔,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)新娜,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,968評論 3 395
  • 文/潘曉璐 我一進(jìn)店門赵辕,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人概龄,你說我怎么就攤上這事还惠。” “怎么了私杜?”我有些...
    開封第一講書人閱讀 164,234評論 0 354
  • 文/不壞的土叔 我叫張陵蚕键,是天一觀的道長。 經(jīng)常有香客問我衰粹,道長锣光,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,562評論 1 293
  • 正文 為了忘掉前任铝耻,我火速辦了婚禮誊爹,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己替废,他們只是感情好箍铭,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,611評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著椎镣,像睡著了一般诈火。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上状答,一...
    開封第一講書人閱讀 51,482評論 1 302
  • 那天冷守,我揣著相機(jī)與錄音,去河邊找鬼惊科。 笑死拍摇,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的馆截。 我是一名探鬼主播充活,決...
    沈念sama閱讀 40,271評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼蜡娶!你這毒婦竟也來了混卵?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,166評論 0 276
  • 序言:老撾萬榮一對情侶失蹤窖张,失蹤者是張志新(化名)和其女友劉穎幕随,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體宿接,經(jīng)...
    沈念sama閱讀 45,608評論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡赘淮,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,814評論 3 336
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了睦霎。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片梢卸。...
    茶點(diǎn)故事閱讀 39,926評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖副女,靈堂內(nèi)的尸體忽然破棺而出蛤高,到底是詐尸還是另有隱情,我是刑警寧澤肮塞,帶...
    沈念sama閱讀 35,644評論 5 346
  • 正文 年R本政府宣布襟齿,位于F島的核電站姻锁,受9級特大地震影響枕赵,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜位隶,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,249評論 3 329
  • 文/蒙蒙 一拷窜、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦篮昧、人聲如沸赋荆。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,866評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽窄潭。三九已至,卻和暖如春酵颁,著一層夾襖步出監(jiān)牢的瞬間嫉你,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,991評論 1 269
  • 我被黑心中介騙來泰國打工躏惋, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留幽污,地道東北人。 一個月前我還...
    沈念sama閱讀 48,063評論 3 370
  • 正文 我出身青樓簿姨,卻偏偏與公主長得像距误,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子扁位,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,871評論 2 354

推薦閱讀更多精彩內(nèi)容

  • LeetCode題目 題目: Given an integer (signed 32 bits), write a...
    _Xie_閱讀 179評論 0 1
  • 分析 一共有2種比較巧妙的方法准潭,前提是首先確定是2的冪次。 4的冪次減1可以被3整除贤牛。 檢查數(shù)字的偶數(shù)位是否有1惋鹅。...
    胡哈哈哈閱讀 285評論 0 0
  • 原題 給出一個整數(shù) (32 位), 寫出一個函數(shù)判斷它是不是4的次方數(shù) 樣例:給出 num = 16, 返回 tr...
    Jason_Yuan閱讀 303評論 0 0
  • 背景 一年多以前我在知乎上答了有關(guān)LeetCode的問題, 分享了一些自己做題目的經(jīng)驗(yàn)。 張土汪:刷leetcod...
    土汪閱讀 12,744評論 0 33
  • 云淡山青依次第殉簸,杏白桃粉伴春開闰集。 初禾韻律方田碧,遍地花香入夢懷般卑。
    不惑而歌閱讀 428評論 7 16