LeetCode编程练习
来源:互联网 发布:java视频教程数组 编辑:程序博客网 时间:2024/06/06 23:45
题目:
Given an integer, write a function to determine if it is a power of two.
给定一个整数,写一个函数来确定它是否是2的幂。
思路:
刚开始想到,只要判断是不是2的倍数就好,但是又想到是2的倍数但又不是2的幂也有,比如说6。查看解决方案,如果一个数是2的幂的话,那它的二进制最高位必然是1,其他都为0,此时如果减1,最高位就会降一位,其余为0的变为1,把两个数相与,就会得到0.
还有一种写法,相对来说复杂一些,只要判断最低位是否为1,然后向右移位,判断1的个数就可以判断是不是2的幂,因为如果是2的幂,只有最高位为1,其余都为0。
阅读全文
0 0
- LeetCode编程练习
- LeetCode编程练习
- LeetCode编程练习
- LeetCode编程练习
- LeetCode编程练习
- LeetCode编程练习
- LeetCode 编程练习
- LeetCode编程练习
- LeetCode编程练习
- LeetCode编程练习
- LeetCode编程练习
- LeetCode编程练习
- LeetCode编程练习
- LeetCode编程练习
- LeetCode编程练习
- LeetCode编程练习
- LeetCode编程练习
- LeetCode编程练习
- 神经机器翻译(Neural Machine Translation)系列教程
- LeetCode编程练习
- AbstractQueuedSynchronizer的介绍和原理分析
- LeetCode编程练习
- Fragment知识点,一篇搞定!
- LeetCode编程练习
- LeetCode编程练习
- LeetCode编程练习
- LeetCode编程练习
- LeetCode编程练习
- superset 出现数据库错误
- (一)驱动开发之环境搭建
- (二)驱动模块开发过程
- 图解Android