LeetCode --- 231. Power of Two

231. Power of Two

Difficulty: Easy

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

Example 1:

Input: 1
Output: true 
Explanation: 20 = 1

Example 2:

Input: 16
Output: true
Explanation: 24 = 16```

**Example 3:**

Input: 218
Output: false```

Solution

Language: C++

思路

如果n大於0,且n的二進制只有1位數字爲1,返回true。否則返回0
如果n只有一位1n & (n-1)的結果爲0

class Solution {
public:
    bool isPowerOfTwo(int n) {
        return n > 0 && !(n & (n-1));
    }
};
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章