数据结构与算法基础–第06周01–第4章串、数组和广义表1-4.1串的定义
线性结构可表示为
(a_1, a_2, ..., a_n)
栈和队列是操作受限的线性表;
串是内容受限的线性表;
数组和广义表是线性结构的推广。
串(string):零个或多个任意字符组成的有限序列
一个串种任意个连续字符组成的子序列(含空串)称为该串的子串。
例如
"abcde"
的子串有:
""
"a"
"ab"
"abc"
"abcd"
"abcde"
真子串是指不包含自身的所有子串。
包含子串的串相应地称为主串。
字符在序列中的序号为该字符在串中的位置。
子串第一个字符在主串中的位置。
由一个或多个空格组成的串,与空串不同。
例如:字符串
a = "BEI"
b = "JING"
c = "BEIJING"
d = "BEI JING"
它们的长度分别是
3
4
7
8
c 的子串是:字符串 a 和字符串 b
d 的子串是:字符串 a 和字符串 b
字符串 a 在字符串 c 中的位置:1
字符串 a 在字符串 d 中的位置:1
字符串 b 在字符串 c 中的位置:4
字符串 b 在字符串 d 中的位置:5
当且仅当两个串的长度相等并且各个对应位置上的字符都相同时,这两个串才是相等的。
例如:
"abcd" ≠ "abc"
"abcd" ≠ "abcde"