二进制如果不是0,说明一定含有1,当检验二进制数有没有1时,对二进制数减1,则最右侧的1那一位(代号m位)会变0,其右边的位全部置为1,此时如果两者相交,则可以去掉m位以及其右侧均为0.
我已经通过这道算法题!输入一个整数,输出该数二进制表示中1的个数。其中负数用补码表示。
https://gw-c.nowcoder.com/api/sparta/jump/link?link=https%3A%2F%2Fwww.nowcoder.com%2FquestionTerminal%2F8ee967e43c2c4ec193b040ea7fbb10b8
全部评论
相关推荐