231 Power Of Two
231 Power Of Two
Power of Two 
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:
1
2
3
4
5
**Input:** n = 1
**Output:** true
**Explanation: **20 = 1
Example 2:
1
2
3
4
5
**Input:** n = 16
**Output:** true
**Explanation: **24 = 16
Example 3:
1
2
3
4
**Input:** n = 3
**Output:** false
Constraints:
1
-231 <= n <= 231 - 1
Follow up: Could you solve it without loops/recursion?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
impl Solution {
pub fn is_power_of_two(n: i32) -> bool {
if n == 2 || n == 1 {
return true
}
if n % 2 != 0 || n == 0 {
return false;
}
return Self::is_power_of_two(n/2)
}
}
This post is licensed under CC BY 4.0 by the author.