Skip to content

Commit 3f7013c

Browse files
committed
Update 01.String-Basic.md
1 parent d92fda3 commit 3f7013c

File tree

1 file changed

+12
-8
lines changed

1 file changed

+12
-8
lines changed

Contents/06.String/01.String-Basic/01.String-Basic.md

Lines changed: 12 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -6,9 +6,9 @@
66

77
- **字符串名称**:字符串定义中的 `s` 就是字符串的名称。
88
- **字符串的值**:$a_1a_2…a_n$ 组成的字符序列就是字符串的值,一般用双引号括起来。
9-
- **字符变量**:字符串每一个位置上的元素都是一个字符变量。字符 $a_i$ 可以是字母、数字或者其他字符。`i` 是该字符在字符串中的位置。
10-
- **字符串的长度**:字符串中字符的数目 `n` 称为字符串的长度。
11-
- **空串**:零个字符构成的串也成为 **「空字符串(Null String)」**,它的长度为 `0`,可以表示为 `""`
9+
- **字符变量**:字符串每一个位置上的元素都是一个字符变量。字符 $a_i$ 可以是字母、数字或者其他字符。$i$ 是该字符在字符串中的位置。
10+
- **字符串的长度**:字符串中字符的数目 $n$ 称为字符串的长度。
11+
- **空串**:零个字符构成的串也成为 **「空字符串(Null String)」**,它的长度为 $0$,可以表示为 `""`
1212
- **子串**:字符串中任意个连续的字符组成的子序列称为该字符串的 **「子串(Substring)」**。并且有两种特殊子串,起始于位置为 `0`、长度为 `k` 的子串称为 **「前缀(Prefix)」**。而终止于位置 `n - 1`、长度为 `k` 的子串称为 **「后缀(Suffix)」**
1313
- **主串**:包含子串的字符串相应的称为 **「主串」**
1414

@@ -22,25 +22,29 @@ str = "Hello World"
2222

2323
![](https://qcdn.itcharge.cn/images/20220117141211.png)
2424

25-
可以看出来,字符串和数组有很多相似之处。比如使用 `名称[下标]` 的方式来访问一个字符。之所以单独讨论字符串是因为:
25+
可以看出来,字符串和数组有很多相似之处。比如同样使用 `名称[下标]` 的方式来访问一个字符。
26+
27+
之所以单独讨论字符串是因为:
2628

2729
- 字符串中的数据元素都是字符,结构相对简单,但规模可能比较庞大。
2830
- 经常需要把字符串作为一个整体来使用和处理。操作对象一般不是某个数据元素,而是一组数据元素(整个字符串或子串)。
2931
- 经常需要考虑多个字符串之间的操作。比如:字符串之间的连接、比较操作。
3032

3133
根据字符串的特点,我们可以将字符串问题分为以下几种:
3234

33-
- 字符串匹配问题
34-
- 子串相关问题
35+
- 字符串匹配问题
36+
- 子串相关问题
3537
- 前缀 / 后缀相关问题;
36-
- 回文串相关问题
38+
- 回文串相关问题
3739
- 子序列相关问题。
3840

3941
## 2. 字符串的比较
4042

4143
### 2.1 字符串的比较操作
4244

43-
两个数字之间很容易比较大小,例如 `1 < 2`。而字符串之间的比较相对来说复杂一点。字符串之间的大小取决于它们按顺序排列字符的前后顺序。比如字符串 `str1 = "abc"``str2 = "acc"`,它们的第一个字母都是 `a`,而第二个字母,由于字母 `b` 比字母 `c` 要靠前,所以 `b < c`,于是我们可以说 `"abc" < "acd" `,也可以说 `str1 < str2`
45+
两个数字之间很容易比较大小,例如 `1 < 2`。而字符串之间的比较相对来说复杂一点。字符串之间的大小取决于它们按顺序排列字符的前后顺序。
46+
47+
比如字符串 `str1 = "abc"``str2 = "acc"`,它们的第一个字母都是 `a`,而第二个字母,由于字母 `b` 比字母 `c` 要靠前,所以 `b < c`,于是我们可以说 `"abc" < "acd" `,也可以说 `str1 < str2`
4448

4549
字符串之间的比较是通过组成字符串的字符之间的「字符编码」来决定的。而字符编码指的是字符在对应字符集中的序号。
4650

0 commit comments

Comments
 (0)