关闭

LeetCode(231) Power of Two

458人阅读 评论(0) 收藏 举报
分类:

题目

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

分析

判断给定整数是否为2的整次幂。
当该整数对应的二进制串中只有1位1时,必然为2的整次幂。
只需判断n&(n-1)是否为0即可。

代码

#include <iostream>
#include <cstdlib>

using namespace std;

class Solution {
public:
	bool isPowerOfTwo(int n) {
		if (n <= 0)
			return false;
		return (n & (n - 1)) == 0 ? true : false;
	}
};

int main()
{
	cout << Solution().isPowerOfTwo(2) << endl;

	system("pause");
	return 0;
}


0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:707451次
    • 积分:10252
    • 等级:
    • 排名:第1741名
    • 原创:392篇
    • 转载:49篇
    • 译文:0篇
    • 评论:190条
    博客专栏
    最新评论