Leetcode-11 2 的冪(簡單)
- 題目描述
- 思路分析
- 通過代碼(python)
題目描述
給你一個整數 n,請你判斷該整數是否是 2 的冪次方。如果是,返回 true ;否則,返回 false 。
如果存在一個整數 x 使得 n == 2^x ,則認為 n 是 2 的冪次方。
示例 1:
輸入:n = 1
輸出:true
解釋:20 = 1
示例 2:
輸入:n = 16
輸出:true
解釋:24 = 16
示例 3:
輸入:n = 3
輸出:false
提示:
思路分析
1.判斷n是否是“2 的冪次方”,說明n需要滿足是正整數,又題目給出n的范圍有負數的范圍,所以要做一個判斷,當n為負數時,直接返回False
2.如果n滿足正整數,可以通過“如果存在一個整數 x 使得n==2**x ,則認為 n 是 2 的冪次方”這個提示做條件判斷,循環x的值,判斷n是否滿足n==2**x,如果滿足,返回True,循環完畢還沒有滿足,返回False
3.根據提示給的n的范圍,可以確定x的范圍為[0,31]
4.python中次方的寫法:**
通過代碼(python)
class Solution:def isPowerOfTwo(self, n: int) -> bool:if n < 0 :return Falsefor x in range(0,32):if n == 2**x:return Truereturn False