本篇笔记课程来源:王道计算机考研 数据结构
一、串的定义
- 串,即字符串(String)是由零个或多个字符组成的有限序列(特殊的线性表),数据元素之间呈线性关系。一般记为 S = ′ a 1 a 2 . . . . . . a n ′ ( n ≥ 0 ) S='a_1a_2......a_n'(n≥0) S=′a1a2......an′(n≥0)其中, S S S 是串名,单引号括起来的字符序列是串的值;
a i a_i ai 可以是字母、数字或其他字符;
串中字符的个数 n n n 称为串的长度。 n = 0 n=0 n=0 时的串称为空串(用 Ø Ø Ø 表示)。 - 串的数据对象限定为字符集(如中文字符、英文字符、数字字符、标点字符等)
- 子串:串中任意个连续的字符组成的子序列。
- 主串:包含子串的串。
- 字符在主串中的位置:字符在串中的序号。
- 子串在主串中的位置:子串的第一个字符在主串中的位置。
二、串的存储结构
1. 串的顺序存储
-
静态数组实现(定长顺序存储)
#define</