第章串 41辛的基哔辘念 42串的存储结构 42/辛的顺序存储结构 422串的铖式存储结构 神4B辛的模式匹配
第四章 串 4.1 串的基本概念 4.2 串的存储结构 4.2.1 串的顺序存储结构 4.2.2 串的链式存储结构 ** 4.3 串的模式匹配
4.1串的基本概念 ●串 String):是由n个字符组成的有限序列。 记为:S=“ana2a3…,an”(n>=0) s是串名,用双引号括起来的字符序列是串的值; 串中字符个数n称为串的长度; >长度为0的串称为空串,用φ表示; 串中任意个连的字符组成的子序列称为该串的子 串;如若s1=“a2a3”就是的一个子串,s称为s的主串
启迪管理课程 2 ⚫串(String):是由n个字符组成的有限序列。 记为: S=“a1a2a3…an ”(n>=0) 4.1 串的基本概念 ➢ s是串名,用双引号括起来的字符序列是串的值; ➢ 串中字符个数n称为串的长度; ➢ 长度为0的串称为空串,用ф表示; ➢ 串中任意个连续的字符组成的子序列称为该串的子 串;如若s1=“a2a3 ”就是s的一个子串,s称为s1的主串
4.1串的基本概念 判断题:如果一个串中的所有字符均在另一串中出 现,则说前者是后者的子串。() Sl=“ I have a sweet drean!” S1的串长=21 a在S1中的位置为4 注意区分: 和 前者是长度为1的空白串;后者是空串,长度为0。 3
启迪管理课程 3 判断题:如果一个串中的所有字符均在另一串中出 现,则说前者是后者的子串。( ) S1=“I have a sweet dream!” S1的串长= a在S1中的位置为 21 4 注意区分: “ ”和“” 前者是长度为1的空白串;后者是空串,长度为0。 4.1 串的基本概念
4.1串的基本概念 的基本运算如下 (1) Strassign(s;cstr):将一个字符串常量赋给串s,即生 成一个其值等于cstr的串。如 StrAssign(s“abc”),则 S=“abc”。 (2) StrCopy(s,t):串复制:将串t赋给串s (3) Strequal(s,t):判串相等:若两个串s与等则返 回真;否则返回假。相等的条件? (4) Strength(s):求串长:返回串s中字符个数
启迪管理课程 4 (1)StrAssign(s,cstr): 将一个字符串常量赋给串s,即生 成一个其值等于cstr的串s。如StrAssign(s,“abc”),则 s=“abc”。 (2)StrCopy(s,t): 串复制:将串t 赋给串s。 (3)StrEqual(s,t): 判串相等:若两个串s与t相等则返 回真;否则返回假。 串的基本运算如下: 相等的条件? (4)StrLength(s): 求串长:返回串s中字符个数。 4.1 串的基本概念
4.1串的基本概念 (5) Concat(s,t;/连接 返回由两个串和连接在一起形成的新串。如s=“xyz” t=“abc”,则 Concat(s,=“ xyzabc”注意: Concat(s,) Concat(t, s) (6) Substr(s,ij);/求子串 返回串中从第( SisStrlength③)个字符开始的、连 续(0≤ <Strength(S-计1个字符组成的子串。如 s=“ abcde”,i=2,则j的取值在0~4
启迪管理课程 5 (5)Concat(s,t); //串连接 返回由两个串s和t连接在一起形成的新串。如s=“xyz” t=“abc”,则Concat(s,t)=“xyzabc” 注意: Concat(s,t)!= Concat(t,s) (6)SubStr(s,i,j); //求子串 返回串s中从第i (1≤i≤StrLength(s)) 个字符开始的、连 续j (0≤j≤StrLength(s)-i+1)个字符组成的子串。如 s=“abcde”,i=2,则j的取值在0~4。 4.1 串的基本概念