字符串
->每个元素都是字符的线性表
字符串处理应用
语言编译、信息检索、文字编辑
基本概念
S=’a1a2....an’ n 为长度 n = 0 表示空串(NULL)
字串:串中任意连续的序列
主串:包含子串的连续序列
子串位置:子串第一字符在串中位置
A =‘Beijing China’ n=13 B/C主串
B=‘Beijing’ n=7 pos=1
C=‘China’ n=5 pos=9
串相等:长度相等,对应位置字符相同
空串与空格串:空串无任何字符,长度n=0 空格串有一个或者多个空格组成,长度等于空格的个数。
串的ADT定义
ADT String{
数据对象D:D={ai|,ai<-CharacterSet,记做V,1=1,2,3..n}
结构关系R:R={<ai,ai+1>|ai<-V,i=1,2,...n-1;n-1>=0}
基本操作O:
StrAsign(S,chars)
操作条件:chars是字符串常量
操作结果:生成一个值等于chars的串S
StrInsert(S,pos,T)
操作条件:串S存在,1<=pos<=StrLength(S)+1
操作结果:在串中pos位置之前插入T
StrDelete(S,pos,len)
操作条件: