数据结构 第四章 串.ppt

  1. 1、本文档共39页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
4. 1 串类型的定义 4.2 串的表示和实现 4.3 串的模式匹配算法 4.4 串操作应用举例 第一趟匹配 a b a b c a b c a c b a b i=3 a b c j=3 第二趟匹配 a b a b c a b c a c b a b i=2 a j=1 第三趟匹配 a b a b c a b c a c b a b i=7 a b c a c j=5 第四趟匹配 a b a b c a b c a c b a b i=4 a j=1 第五趟匹配 a b a b c a b c a c b a b i=5 a j=1 第六趟匹配 a b a b c a b c a c b a b i=11 a b c a c j=6 匹配成功 文本编辑程序 文本编辑程序是一个面向用户的系统服务程序。它的基本操作包括串的插入、删除、查找。 在缓冲区中顺序存放文本文件,但是文本编辑程序要经常的插入、删除字符。这两种操作都会引起文件内所有字符的移动。要全部顺序存储,处理速度就会非常低。通常的方法是建立两张表:行表(行号、首地址、长度)和页表(页号、首行号)。 1)在读入文件过程中建立行表和页表 换行符:登记当前行长度、准备新行号及记录首地址。 换页符:除了做换行符要做的工作外,还要建立新的页记录。 2)删除字符:修改行表中对应记录的长度字段。 3)插入字符:检查插入行有无空间来插入字符 有:修改行表中长度字段,插入字符。 无:将该行移到适当位置,并修改行表中对应记录的行首地址、长度字段,插入字符。 4)插入行:修改行表中涉及到的行号,行表中插入新记录。 5)删除行:删除行表中对应记录修改所涉及到的行号。 插入行和删除行的操作有可能需要修改页号。 以上只是粗略的框架,实现文本编辑程序时需要考虑诸多细节问题。 建立词索引表 信息检索是计算机应用的重要领域之一,提高信息检索的效率是信息检索要解决的重要问题,解决效率问题的方法通常是建立索引。例如图书馆书目检索系统,我们可以按书名、作者名和分类号建立索引。但是在实际系统中,用书名检索不是很方便,因为很多内容相同的书,书名是不同的。比较好的方法是建立“书名关键词索引” * * 学习要点 1 了解串的基本操作,了解利用这些基本操作实现串的其它操 作的方法; 2 掌握在串的堆分配存储结构下,串的基本操作算法; 3 掌握串的模式匹配算法; 串也叫字符串,它是由零个或多个字符组成的字符序列。 基本内容 1 串的有关概念 串的基本操作 2 串的定长顺序存储结构,堆分配存储结构; 3 串的基本操作算法; 4 串的模式匹配算法; 5 串操作的应用。 第四章 串 4.1 串的基本概念 4.2 串存储和实现 4.3 串的匹配算法 4.4 串操作应用举例 第四章 串 4.1 串的基本概念 4.2 串存储和实现 4.3 串的匹配算法 4.4 串操作应用举例 第四章 串 4.1 串的基本概念 4.2 串存储和实现 4.3 串的匹配算法 4.4 串操作应用举例 第四章 串 4.1 串的基本概念 4.2 串存储和实现 4.3 串的匹配算法 4.4 串操作应用举例 一、串的定义 1 什么是串 串是一种特殊的线性表,它是由零个或多个字符组成的有限序列,一般记作 s = ‘a1,a2, a3, ... an’ 其中 s----串名, a1,a2, a3, ... an----串值 串的应用非常广泛,许多高级语言中都把串作为基本数据类型。在事务处理程序中,顾客的姓名、地址;货物的名称、产地。可作为字符串处理,文本文件中的每一行字符等也可作为字符串处理。 下面是一些串的例子: (1)a = ‘ LIMING’ (2)b = ‘NANJING UNIVERSITY OF SCIENCE TECHNOLOGY’ (3)c = ‘ DATA STRUCTURE’ (4)d = ‘’ (5)e = ‘ ’ 说明: 1) 串中包含的字符个数,称为串的长度。 长度为0的串称为空串,它不包括任何字符,上面(4)中的串d是空串,(5)中的e 是包含一个空格符的空格串; 2)串中所包含的字符可以是字母、数字或其他字符,这依赖于

文档评论(0)

153****9595 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档