问题很简单,给定一个 8 位整型,要求写程序计算这个数的二进制表示中 1 的个数,要求算法的执行效率尽可能的高。 先来看看样章上给出的几个算法: 解法一,每次除二,看是否为奇数,是的话就累计加一,最后这个结果就是二进制表示中1的个数。 解法二,同样用到一个循环,只是里面的操作用位移操作简化了。 int Count ( int v) { int num = 0 ; while (v) { num +…
问题很简单,给定一个 8 位整型,要求写程序计算这个数的二进制表示中 1 的个数,要求算法的执行效率尽可能的高。 先来看看样章上给出的几个算法: 解法一,每次除二,看是否为奇数,是的话就累计加一,最后这个结果就是二进制表示中1的个数。 解法二,同样用到一个循环,只是里面的操作用位移操作简化了。 int Count ( int v) { int num = 0 ; while (v) { num +…
讨论
登录后参与讨论
还没有评论,来说第一句吧。