串
1.串
1.1 串的定义
- 串:即字符串,是由0个或多个字符组成的有限序列
- 串相当于是一种特殊的线性表,数据对象限定为数据集
- 字符在主串中的位置:从1开始计数,与线性表中的位序相同
1.2 串的存储结构
1.2.1 串的顺序存储
- 用静态数组存储字符串(定长顺序存储)
#define MAXLEN 255 //预定义最大串长为255
typedef struct{
char ch[MAXLEN]; //每个分量存储一个字符
int length //串的实际长度
}SString;
1.2.2 串的链式操作
typedef struct StringNode{
char ch[4]; //一个节点可以存4个字符或者多个字符
struct StringNode *next;
}SteingNode,*String;
1.3 串的基本操作的实现
1.3.1 求子串
- 用Sub返回串s的第pos个字符起长度为len的子串
bool SubString(SString &Sub,SString S,int pos,int len){
//子串范围越界
if(pos+len-1 > s.length)
return false;
for(int i = pos