给定一个整数,编写一个函数来判断它是否是 2 的幂次方。
这道题很巧妙,如果一个数字是 2 的幂次方的话,那么它的二进制表示中肯定只有一位是1,想到这就可以用与运算来计算。
举个栗子:8的二进制表示为1000 ,8-1 = 7的二进制表示为0111,那么 8&7 = 0 会把 8 的二进制表示从右到左第一个1置为0。利用这个判断数字的二进制表示是否只有一位为1即可。还有要判断负数和0!!!
给定一个整数,编写一个函数来判断它是否是 2 的幂次方。
这道题很巧妙,如果一个数字是 2 的幂次方的话,那么它的二进制表示中肯定只有一位是1,想到这就可以用与运算来计算。
举个栗子:8的二进制表示为1000 ,8-1 = 7的二进制表示为0111,那么 8&7 = 0 会把 8 的二进制表示从右到左第一个1置为0。利用这个判断数字的二进制表示是否只有一位为1即可。还有要判断负数和0!!!
本文标题:231-2的幂
本文链接:https://www.haomeiwen.com/subject/rnoowqtx.html
网友评论