成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

LeetCode 342. Power of Four

jiekechoo / 1090人閱讀

摘要:描述給定一個整數(shù)位有符號整數(shù),請編寫一個函數(shù)來判斷它是否是的冪次方。出現(xiàn)在奇數(shù)位,那么此數(shù)與與運算為本身。何睿何睿數(shù)字不為零的二級制只有一個中的位置出現(xiàn)在第位,或第位,或第位源代碼文件在這里。

Description

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

Example 1:

Input: 16
Output: true
Example 2:

Input: 5
Output: false
Follow up: Could you solve it without loops/recursion?

描述

給定一個整數(shù) (32 位有符號整數(shù)),請編寫一個函數(shù)來判斷它是否是 4 的冪次方。

示例 1:

輸入: 16
輸出: true
示例 2:

輸入: 5
輸出: false
進階:
你能不使用循環(huán)或者遞歸來完成本題嗎?

思路

一個數(shù)若是 4 的冪次方,那么這個數(shù)的二進制表示只有一個 1。

并且這個數(shù)的1 出現(xiàn)在(從右往左) 第 1,或 3,或 5 ,或 7 ... 位。

一個數(shù) num 只有一個 1 那么,num 和 num -1 與運算結(jié)果為 0。

1 出現(xiàn)在奇數(shù)位,那么此數(shù)與 1010101010101010101010101010101 與運算為 num 本身。

# -*- coding: utf-8 -*-
# @Author:             何睿
# @Create Date:        2019-04-08 16:58:04
# @Last Modified by:   何睿
# @Last Modified time: 2019-04-08 17:11:49


class Solution:
    def isPowerOfFour(self, num: "int") -> "bool":
        # num 數(shù)字不為零
        # num 的二級制只有一個 1
        # num 中 1 的位置出現(xiàn)在第 1 位,或第 3 位,或第5 ... 位
        return num != 0 and num & (
            num - 1) == 0 and num & 0b1010101010101010101010101010101 == num

源代碼文件在 這里 。
?本文首發(fā)于 何睿的博客 ,歡迎轉(zhuǎn)載,轉(zhuǎn)載需保留 文章來源 ,作者信息和本聲明.

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/43533.html

相關(guān)文章

  • [Leetcode] Power of Two and Power of Four 二之冪四之冪

    摘要:整除法復(fù)雜度時間空間思路最簡單的解法,不斷將原數(shù)除以,一旦無法整除,余數(shù)不為,則說明不是的冪,如果整除到,說明是的冪。二進制位計數(shù)法復(fù)雜度時間空間思路的冪有一個特性,就是它的二進制表達中只有開頭是,后面全是。 Power of Two Given an integer, write a function to determine if it is a power of two. 整除法...

    荊兆峰 評論0 收藏0
  • LeetCode 攻略 - 2019 年 7 月下半月匯總(100 題攻略)

    摘要:月下半旬攻略道題,目前已攻略題。目前簡單難度攻略已經(jīng)到題,所以后面會調(diào)整自己,在刷算法與數(shù)據(jù)結(jié)構(gòu)的同時,攻略中等難度的題目。 Create by jsliang on 2019-07-30 16:15:37 Recently revised in 2019-07-30 17:04:20 7 月下半旬攻略 45 道題,目前已攻略 100 題。 一 目錄 不折騰的前端,和咸魚有什么區(qū)別...

    tain335 評論0 收藏0
  • 前端 | 每天一個 LeetCode

    摘要:在線網(wǎng)站地址我的微信公眾號完整題目列表從年月日起,每天更新一題,順序從易到難,目前已更新個題。這是項目地址歡迎一起交流學(xué)習(xí)。 這篇文章記錄我練習(xí)的 LeetCode 題目,語言 JavaScript。 在線網(wǎng)站:https://cattle.w3fun.com GitHub 地址:https://github.com/swpuLeo/ca...我的微信公眾號: showImg(htt...

    張漢慶 評論0 收藏0
  • [LeetCode] Power of Two, Power of Three, Power of

    三道基本相同的題目,都可以用位操作、遞歸和迭代來做。 Power of Two 1. Bit Manipulation -- 2 ms beats 21.88% public class Solution { public boolean isPowerOfTwo(int n) { return n>0 && (n&(n-1))==0; } } 2. Iterat...

    pingink 評論0 收藏0
  • leetcode231. Power of Two

    摘要:題目要求判斷一個整數(shù)是否是的冪。思路和代碼當(dāng)我們從二進制的角度來看,這個題目就非常簡單了。其實題目的要求等價于該整數(shù)對應(yīng)的二進制數(shù)中,一共有幾個。該題目的難點在于考慮邊界情況,比如,即。 題目要求 Given an integer, write a function to determine if it is a power of two. 判斷一個整數(shù)是否是2的冪。 思路和代碼 當(dāng)我...

    JessYanCoding 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<