g0201_0300.s0231_power_of_two.Solution Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of leetcode-in-java21 Show documentation
Show all versions of leetcode-in-java21 Show documentation
Java-based LeetCode algorithm problem solutions, regularly updated
package g0201_0300.s0231_power_of_two;
// #Easy #Math #Bit_Manipulation #Recursion #Algorithm_I_Day_13_Bit_Manipulation
// #2022_07_04_Time_1_ms_(100.00%)_Space_39.6_MB_(90.19%)
/**
* 231 - Power of Two\.
*
* Easy
*
* Given an integer `n`, return _`true` if it is a power of two. Otherwise, return `false`_.
*
* An integer `n` is a power of two, if there exists an integer `x` such that n == 2x
.
*
* **Example 1:**
*
* **Input:** n = 1
*
* **Output:** true
*
* **Explanation:** 20 = 1
*
* **Example 2:**
*
* **Input:** n = 16
*
* **Output:** true
*
* **Explanation:** 24 = 16
*
* **Example 3:**
*
* **Input:** n = 3
*
* **Output:** false
*
* **Example 4:**
*
* **Input:** n = 4
*
* **Output:** true
*
* **Example 5:**
*
* **Input:** n = 5
*
* **Output:** false
*
* **Constraints:**
*
* * -231 <= n <= 231 - 1
*
* **Follow up:** Could you solve it without loops/recursion?
**/
public class Solution {
public boolean isPowerOfTwo(int n) {
if (n <= 0) {
return false;
}
while (true) {
if (n == 1) {
return true;
}
if (n % 2 == 1) {
return false;
}
n /= 2;
}
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy