[转载] 一串32-bit integers,要数bit-1的总数?# Computation - 科学计算
a*n
1 楼
【 以下文字转载自 Programming 讨论区 】
【 原文由 adven 所发表 】
一串32-bit的int陆续到来,
需要数出bit为1的总个数。
除了1个1个bit的数,8个8个/16个16个bit直接索引查表数,
还有没有别的更加clever高效的算法?
比如,怎么样 x & (x-1) | (x+1) ... 然后就直接得出 1 的个数,
或者有什么magic number, x % magic & magic 然后就得出 1 的个数?
谢谢!
【 原文由 adven 所发表 】
一串32-bit的int陆续到来,
需要数出bit为1的总个数。
除了1个1个bit的数,8个8个/16个16个bit直接索引查表数,
还有没有别的更加clever高效的算法?
比如,怎么样 x & (x-1) | (x+1) ... 然后就直接得出 1 的个数,
或者有什么magic number, x % magic & magic 然后就得出 1 的个数?
谢谢!