在某個(gè)位置或更低位置計(jì)算設(shè)置位的有效方法是什么?給定std::bitset<64> bits任意數(shù)量的位和位位置X(0-63)在X位或更低位計(jì)數(shù)位的最有效方法是什么,如果未設(shè)置X位,則返回0注意:如果設(shè)置該位,則返回始終至少為1蠻力方式很慢:int countupto(std::bitset<64> bits, int X){
if (!bits[X]) return 0;
int total=1;
for (int i=0; i < X; ++i)
{
total+=bits[i];
}
return total;}這個(gè)count()方法bitset將為您popcount提供所有位,但bitset不支持范圍
在某個(gè)位置或更低位置計(jì)算設(shè)置位的有效方法是什么?
呼喚遠(yuǎn)方
2019-08-28 09:38:55