【アルゴリズム】バイナリの中の1の個数を求めます

494 ワード

//  
int Count(int src)
{
    int nNum = 0;
    while (src)
    {
        if (src % 2 == 1)
        {
            nNum++;
        }
        src /= 2;
    }
    return nNum;
}
//  
int Count1(int src)
{
    int nNum = 0;
    while (src)
    {
       nNum += src & 0x01;
        src >>= 1;
    }
    return nNum;
}

//  
int Count2(int src)
{
    int nNum = 0;
    while (src)
    {
        src &= src -1;
        nNum++;
    }
    return nNum;
}