1.2.5 集合
集合更像是不会有重复元素的数组,但它的本质是以元素的哈希值作为 Key,从而实现去重的逻辑。因此,集合也可以推导,不过得用字典的语法:
回忆一下,二进制逻辑运算一共有三个运算符,按位或 |
,按位与 &
和异或 ^
,这三个运算符也可以用在集合之间,而且含义变化不大。比如:
这里的 |
运算表示并集,也就是 c 中的任意元素,要么在 a,要么在 b 集合中。类似的,按位与 &
运算求的就是交集:
而异或则表示那些只在 a 不在 b 或者只在 b 不在 a 的元素。或者换个说法,表示那些在集合 a 和 b 中出现了且仅出现了一次的元素:
还有一个差集运算 -
,表示在集合 a 中但不在集合 b 中的元素:
回忆一下韦恩图,就会得到以下公式(虽然并没有什么卵用):
A | B = (A ^ B) | (A & B) A ^ B = (A - B) | (B - A)
Last updated