定长顺序存储表示

#define Maxsize 255

typedef struct {

char ch[Maxsize];

int length;

}Sstring;

 

堆分配存储表示

typedef struct{

char *ch;

int length;

}

 

基本操作

StrAssign(&T,chars):赋值

StrCopy(&T,S):复制S到T

StrEmpty(S):判空

StrCompare(S,T):比较,若S>T,返回值>0, 若S<T,返回值=0

StrLength(S):求串长

SubString(&Sub,S,pos,len):求子串,用Sub返回S中第pos开始的长len的子串

Concat(&T,S1,S2):把S1 S2串起来用T返回

Index(S,T):S中是否存在T,如存在返回第一次出现的位置,不存在返回0

ClearString(&S):清空内容

DestoryString(&S):销毁串

 

KPM算法/主要考求next数组啥的

串【考研/408】

串【考研/408】

串【考研/408】

next[1]=0   next[2]=1   这两个是一定的

串【考研/408】

串【考研/408】

nextval数组是经过优化后 如果 序号j=3,next[3]=1,又因为1和3的模式串相同

所以把1的next值赋给3的nextval

 

相关文章: