1. 程式人生 > >「演算法競賽進階指南」 0x01 位運算 知識筆記

「演算法競賽進階指南」 0x01 位運算 知識筆記

二進位制是計算機的根本!

你瞭解它嗎?

int lowbit(int x)
{
    return x&(-x);//x&(~x+1),~x=-1-x;
}
int __builtin_ctz(unsigned int x)
int __builtin_ctzll(unsigned long long x)
返回x的二進位制表示下最低位的1後面有多少個0 
int __builtin_popcount(unsigned int x)
int __builtin_popcountll(unsigned long long x)
返回x的二進位制表示下有多少位為1