串第4章4.1串的基本概念4.2串的存储结构4.3串的模式匹配
1 第4章 串 4.1 串的基本概念 4.2 串的存储结构 4.3 串的模式匹配
4.1串的基本概念串(或字符串),是由零个或多个字符组成的有穷序列。含零个字符的串称为空串,用Φ表示。串中所含字符的个数称为该串的长度(或串长)通常将一个串表示成"a,a2..a.”的形式。其中最外边的双引号本身不是串的内容,它们是串的标志,以便将串与标识符(如变量名等)加以区别。每个a:(l≤i<n)代表一个字符
2 串(或字符串),是由零个或多个字符组成的有穷 序列。含零个字符的串称为空串,用Ф表示。 串中所含字符的个数称为该串的长度(或串长)。 通常将一个串表示成“ a1 a2.an ”的形式。其中, 最外边的双引号本身不是串的内容,它们是串的标 志,以便将串与标识符(如变量名等)加以区别。每个 ai (1≤i≤n)代表一个字符。 4.1 串的基本概念
当且仅当两个串的长度相等并且各个对应位置上的字符都相同时,这两个串才是相等的一个串中任意个连续字符组成的子序列(含空串但不含串本身)称为该串的子串。例如“a”ab”"abcde"的子串。abc”和"abcd”等都是
3 当且仅当两个串的长度相等并且各个对应位置上 的字符都相同时,这两个串才是相等的。 一个串中任意个连续字符组成的子序列(含空串, 但不含串本身)称为该串的子串。例如,“a”、 “ab”、 “abc”和“abcd”等都是“abcde”的子串
问题:“abcde"有多少个子串?解:空串数:1含1个字符的子串数:5含2个字符的子串数:4含3个字符的子串数:3含4个字符的子串数:2共有1+2+3+4+5=15个子串
4 问题: “abcde”有多少个子串? 解: 空串数:1 含1个字符的子串数:5 含2个字符的子串数:4 含3个字符的子串数:3 含4个字符的子串数:2 共有1+2+3+4+5=15个子串
串的基本运算如下(1) StrAssign(&s, chars):将一个字符串常量赋给串s,即生成一个其值等于chars的串s。(2) StrCopy(&s, t):串复制:将串赋给串s。(3) StrEqual(s,t):判串相等:若两个串s与相等则返回真;否则返回假。(4) StrLength(s):求串长:返回串s中字符个数
5 串的基本运算如下: (1) StrAssign(&s, chars): 将一个字符串常量赋给串s,即生成一个其值等于 chars的串s。 (2) StrCopy(&s, t): 串复制:将串t赋给串s。 (3) StrEqual(s,t): 判串相等:若两个串s与t相等则返回真;否则返回 假。 (4) StrLength(s): 求串长:返回串s中字符个数