集合论

位运算可以高效处理集合相关问题。

集合具有性质:元素不重复。那么对于一个整数集合,可以用二进制唯一表示其包含元素。

用 $f(S)$ 表示一个集合的编码,那么 $f(S) = \sum_{i \in S} 2^i$

举例:有一个集合 ${0, 1, 3}$, 那么 $f(S) = 2^0 + 2^1 + 2^3 = 11 = (1010)_2$

反转二进制编码

例如:
$$
(12)_{10}=(1100)_2
$$
则反转后
$$
(0011)2 = (3){10}
$$
定义函数 $f(x)$ 用于表示某十进制数 $x$ 二进制反转后得到的十进制数 $f(x)$。