Skip to content

Commit 6af91a8

Browse files
committed
Update 01.Bit-Operation.md
1 parent 6db8190 commit 6af91a8

File tree

1 file changed

+12
-12
lines changed

1 file changed

+12
-12
lines changed

Contents/09.Algorithm-Base/06.Bit-Operation/01.Bit-Operation.md

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -56,14 +56,14 @@ $\begin{aligned} 106 \div 2 = 53 & \text{(余 0)} \cr 53 \div 2 = 26 & \text
5656

5757
我们先来看下这 $6$ 种位运算的规则,再来进行详细讲解。
5858

59-
| 运算符 | 描述 | 规则 |
60-
| ------ | -------------- | ------------------------------------------------------------ |
61-
| `&` | 按位与运算符 | 只有对应的两个二进位都为 $1$ 时,结果位才为 $1$。 |
62-
| `|` | 按位或运算符 | 只要对应的两个二进位有一个为 $1$ 时,结果位就为 $1$。 |
63-
| `^` | 按位异或运算符 | 对应的两个二进位相异时,结果位为 $1$,二进位相同时则结果位为 $0$。 |
64-
| `~` | 取反运算符 | 对二进制数的每个二进位取反,使数字 $1$ 变为 $0$,$0$ 变为 $1$。 |
65-
| `<<` | 左移运算符 | 将二进制数的各个二进位全部左移若干位。`<<` 右侧数字指定了移动位数,高位丢弃,低位补 $0$。 |
66-
| `>>` | 右移运算符 | 对二进制数的各个二进位全部右移若干位。`>>` 右侧数字指定了移动位数,低位丢弃,高位补 $0$。 |
59+
| 运算符 | 描述 | 规则 |
60+
| ------------------- | -------------- | ------------------------------------------------------------ |
61+
| `&` | 按位与运算符 | 只有对应的两个二进位都为 $1$ 时,结果位才为 $1$。 |
62+
| <code>&#124;</code> | 按位或运算符 | 只要对应的两个二进位有一个为 $1$ 时,结果位就为 $1$。 |
63+
| `^` | 按位异或运算符 | 对应的两个二进位相异时,结果位为 $1$,二进位相同时则结果位为 $0$。 |
64+
| `~` | 取反运算符 | 对二进制数的每个二进位取反,使数字 $1$ 变为 $0$,$0$ 变为 $1$。 |
65+
| `<<` | 左移运算符 | 将二进制数的各个二进位全部左移若干位。`<<` 右侧数字指定了移动位数,高位丢弃,低位补 $0$。 |
66+
| `>>` | 右移运算符 | 对二进制数的各个二进位全部右移若干位。`>>` 右侧数字指定了移动位数,低位丢弃,高位补 $0$。 |
6767

6868
### 2.1 按位与运算
6969

@@ -265,23 +265,23 @@ class Solution:
265265

266266
那么我们就可以用一个长度为 $n$ 的二进制数来表示集合 $S$ 或者表示 $S$ 的子集。其中二进制的每一个二进位都对应了集合中某一个元素的选取状态。对于集合中第 $i$ 个元素来说,二进制对应位置上的 $1$ 代表该元素被选取,$0$ 代表该元素未被选取。
267267

268-
举个例子,比如长度为 $5$ 的集合 $S = \left \{ 5, 4, 3, 2, 1 \right \}$,我们可以用一个长度为 $5$ 的二进制数来表示该集合。
268+
举个例子,比如长度为 $5$ 的集合 $S = \{ 5, 4, 3, 2, 1 \}$,我们可以用一个长度为 $5$ 的二进制数来表示该集合。
269269

270-
比如二进制数 $11111_{(2)}$ 就表示选取集合的第 $1$ 位、第 $2$ 位、第 $3$ 位、第 $4$ 位、第 $5$ 位元素,也就是集合 $\left \{ 5, 4, 3, 2, 1 \right \}$,即集合 $S$ 本身。如下表所示:
270+
比如二进制数 $11111_{(2)}$ 就表示选取集合的第 $1$ 位、第 $2$ 位、第 $3$ 位、第 $4$ 位、第 $5$ 位元素,也就是集合 `{5, 4, 3, 2, 1}`,即集合 $S$ 本身。如下表所示:
271271

272272
| 集合 S 中元素位置 | 5 | 4 | 3 | 2 | 1 |
273273
| :---------------- | :--: | :--: | :--: | :--: | :--: |
274274
| 二进位对应值 | 1 | 1 | 1 | 1 | 1 |
275275
| 对应选取状态 | 选取 | 选取 | 选取 | 选取 | 选取 |
276276

277-
再比如二进制数 $10101_{(2)}$ 就表示选取集合的第 $1$ 位、第 $3$ 位、第 $5$ 位元素,也就是集合 $\left \{5, 3, 1 \right \}$。如下表所示:
277+
再比如二进制数 $10101_{(2)}$ 就表示选取集合的第 $1$ 位、第 $3$ 位、第 $5$ 位元素,也就是集合 `{ 5, 3, 1 }`。如下表所示:
278278

279279
| 集合 S 中元素位置 | 5 | 4 | 3 | 2 | 1 |
280280
| :---------------- | :--: | :----: | :--: | :----: | :--: |
281281
| 二进位对应值 | 1 | 0 | 1 | 0 | 1 |
282282
| 对应选取状态 | 选取 | 未选取 | 选取 | 未选取 | 选取 |
283283

284-
再比如二进制数 $01001_{(2)}$ 就表示选取集合的第 $1$ 位、第 $4$ 位元素,也就是集合 $\left \{4, 1 \right \}$。如下标所示:
284+
再比如二进制数 $01001_{(2)}$ 就表示选取集合的第 $1$ 位、第 $4$ 位元素,也就是集合 `{ 4, 1 }`。如下标所示:
285285

286286
| 集合 S 中元素位置 | 5 | 4 | 3 | 2 | 1 |
287287
| :---------------- | :----: | :--: | :----: | :----: | :--: |

0 commit comments

Comments
 (0)