4.1串类型的定义 SubString(sub,'commander',4,7) sub SubString(sub,'beijing',7,2) sub 起始位置和子串长度之间存在约束关系 SubString(sub,'student',5,0) sub = Q -16 1945
— 16 — 4.1 串类型的定义 SubString(sub, commander, 4, 7) sub = ? SubString(sub, beijing, 7, 2) sub = ? SubString(sub, student, 5, 0) sub = 起始位置和子串长度之间存在约束关系
4.1串类型的定义 4.1.2串的抽象数据类型的定义 Index (S,T,pos) 初始条件:串S和T存在,T是非空串, 1spos<StrLength(S). 操作结果:若主串S中存在和串T值相同的子串, 则返回它在主串S中第pos个字符之后 第一次出现的位置;否则函数值为0。 -17- 145
— 17 — 4.1 串类型的定义 Index (S, T, pos) 初始条件:串S和T存在,T是非空串, 1≤pos≤StrLength(S)。 操作结果:若主串 S 中存在和串 T 值相同的子串, 则返回它在主串 S 中第pos个字符之后 第一次出现的位置;否则函数值为0。 4.1.2 串的抽象数据类型的定义
4.1串类型的定义 “子串在主串中的位置”意指子串 中的第一个字符在主串中的位序。 假设S='abcaabcaaabc',T=bca' Index(S,T,1)=2; Index(S,T,3)=6; Index(S,T,8)=0; -18- 145
— 18 — 4.1 串类型的定义 假设 S = abcaabcaaabc, T = bca Index(S, T, 1) = 2; Index(S, T, 3) = 6; Index(S, T, 8) = 0; “子串在主串中的位置”意指子串 中的第一个字符在主串中的位序
4.1串类型的定义 4.1.2串的抽象数据类型的定义 Replace (&S,T,V) 初始条件:串S,T和V均已存在,且T是 非空串。 操作结果:用V替换主串S中出现的所有与 模式串T相等的不重叠的子串。 Q -19- 1945
— 19 — 4.1 串类型的定义 Replace (&S, T, V) 初始条件:串S, T和 V 均已存在,且 T 是 非空串。 操作结果:用V替换主串S中出现的所有与 模式串T相等的不重叠的子串。 4.1.2 串的抽象数据类型的定义
4.1串类型的定义 例如: 假设S='abcaabcaaabca',T=bca' 若V=X',则经置换后得到 S ='axaxaax' 若V=bc',则经置换后得到 S ='abcabcaabc -20- 145
— 20 — 4.1 串类型的定义 例如: 假设 S = abcaabcaaabca,T = bca 若 V = x, 则经置换后得到 S = axaxaax 若 V = bc, 则经置换后得到 S = abcabcaabc