摘要:描述給定一個整數位有符號整數,請編寫一個函數來判斷它是否是的冪次方。出現在奇數位,那么此數與與運算為本身。何睿何睿數字不為零的二級制只有一個中的位置出現在第位,或第位,或第位源代碼文件在這里。
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?
給定一個整數 (32 位有符號整數),請編寫一個函數來判斷它是否是 4 的冪次方。
示例 1:
輸入: 16
輸出: true
示例 2:
輸入: 5
輸出: false
進階:
你能不使用循環或者遞歸來完成本題嗎?
一個數若是 4 的冪次方,那么這個數的二進制表示只有一個 1。
并且這個數的1 出現在(從右往左) 第 1,或 3,或 5 ,或 7 ... 位。
一個數 num 只有一個 1 那么,num 和 num -1 與運算結果為 0。
1 出現在奇數位,那么此數與 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 數字不為零 # num 的二級制只有一個 1 # num 中 1 的位置出現在第 1 位,或第 3 位,或第5 ... 位 return num != 0 and num & ( num - 1) == 0 and num & 0b1010101010101010101010101010101 == num
源代碼文件在 這里 。
?本文首發于 何睿的博客 ,歡迎轉載,轉載需保留 文章來源 ,作者信息和本聲明.
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/43533.html
摘要:整除法復雜度時間空間思路最簡單的解法,不斷將原數除以,一旦無法整除,余數不為,則說明不是的冪,如果整除到,說明是的冪。二進制位計數法復雜度時間空間思路的冪有一個特性,就是它的二進制表達中只有開頭是,后面全是。 Power of Two Given an integer, write a function to determine if it is a power of two. 整除法...
摘要:月下半旬攻略道題,目前已攻略題。目前簡單難度攻略已經到題,所以后面會調整自己,在刷算法與數據結構的同時,攻略中等難度的題目。 Create by jsliang on 2019-07-30 16:15:37 Recently revised in 2019-07-30 17:04:20 7 月下半旬攻略 45 道題,目前已攻略 100 題。 一 目錄 不折騰的前端,和咸魚有什么區別...
摘要:在線網站地址我的微信公眾號完整題目列表從年月日起,每天更新一題,順序從易到難,目前已更新個題。這是項目地址歡迎一起交流學習。 這篇文章記錄我練習的 LeetCode 題目,語言 JavaScript。 在線網站:https://cattle.w3fun.com GitHub 地址:https://github.com/swpuLeo/ca...我的微信公眾號: showImg(htt...
三道基本相同的題目,都可以用位操作、遞歸和迭代來做。 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...
摘要:題目要求判斷一個整數是否是的冪。思路和代碼當我們從二進制的角度來看,這個題目就非常簡單了。其實題目的要求等價于該整數對應的二進制數中,一共有幾個。該題目的難點在于考慮邊界情況,比如,即。 題目要求 Given an integer, write a function to determine if it is a power of two. 判斷一個整數是否是2的冪。 思路和代碼 當我...
閱讀 3338·2021-11-22 15:22
閱讀 2862·2021-10-12 10:12
閱讀 2156·2021-08-21 14:10
閱讀 3822·2021-08-19 11:13
閱讀 2841·2019-08-30 15:43
閱讀 3223·2019-08-29 16:52
閱讀 438·2019-08-29 16:41
閱讀 1427·2019-08-29 12:53