http://blog.csdn.net/coder_xia/article/details/7330376
void set(int i) { a[i>>SHIFT] |= (1<<(i & MASK)); }
其中 i & MASK <==>i % MASK i的低mask位保持不变 就是对mask求余
该操作先确定第i位在数组中哪个元素,然后确定这个元素的哪一位
http://blog.csdn.net/coder_xia/article/details/7330376
void set(int i) { a[i>>SHIFT] |= (1<<(i & MASK)); }
其中 i & MASK <==>i % MASK i的低mask位保持不变 就是对mask求余
该操作先确定第i位在数组中哪个元素,然后确定这个元素的哪一位