下载此文档

第四章 串.ppt


文档分类:IT计算机 | 页数:约29页 举报非法文档有奖
1/29
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/29 下载此文档
文档列表 文档介绍
第四章串
串的基本概念
串的存储结构
串的操作算法
连接、比较、拷贝
模式匹配(查找子串)
查找并替换
串的应用
串的基本概念
定义:
串是由零个或多个任意字符组成的有限序列。一般记作 S="a1 a2…an"
例如:
S1="data structure",长度为14的串
S2=“struct”, 长度为6的串
S3=“”, 空串,长度为0
S4=“”, 空格串,长度为1
子串, 主串
串的存储结构
顺序存储结构
用固定长度的数组来存储串中的字符序列
链式存储结构
用链表存储串中的字符序列
1 串的顺序存储结构
有三种方法表示串的长度
2 串的链式存储结构
(1)非压缩形式
(2)压缩形式
串的操作算法

void StrCat (char *s1, char *s2) //连接
{
len1=strlen(s1);
len2=strlen(s2);
if (len1+len2>MaxSize-1) {cerr<<"超长"; exit(1);}
i=0;
while(s2[i]!='\0')
{
s1[i+len1]=s2[i];
i++;
}
s1[i+len1]='\0';
}
2. 串的比较
int StrCmp(char *s1, char *s2) //比较
{
i=0;
while (s1[i]==s2[i] && s1[i]!='\0')
i++;
return (s1[i]-s2[i]);
}

void StrCpy(char *s1, char *s2) //复制
{
int len=strlen(s2);
if (len>MaxSize-1) {cerr<<"超长"; exit(1);}
while (*s1++ = *s2++);
}
4. 串的模式匹配
给定两个串s和t,在主串s中寻找子串t的过程称为模式匹配,t称为模式。
模式匹配算法
简单的模式匹配算法,简称BF算法;
KMP模式匹配算法
为了操作方便,串采用第(3)种顺序存储方式,即串的长度存放在0号单元,串值从1号单元存放.

第四章 串 来自淘豆网www.taodocs.com转载请标明出处.

相关文档 更多>>
非法内容举报中心
文档信息
  • 页数29
  • 收藏数0 收藏
  • 顶次数0
  • 上传人cjc201601
  • 文件大小914 KB
  • 时间2017-12-27