- 1、本文档共23页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
综合试验四数据压缩DataCompression
综合实验题目
目录
目录 1
综合实验一:文本检索 2
综合实验二: HTML文件中有序列表的语法树提取及基于树的检索 3
综合实验三: 全国交通资讯模拟 6
综合实验四:数据压缩(Data Compression) 6
综合实验五:小游戏(Little Game) 8
综合实验六:学籍信息管理 10
综合实验七:最小生成树问题 11
【附录一】字符串操作函数 13
【附录二】html文档 20
综合实验一:文本检索
【实验说明】
实现一个类似于编辑器(如记事本、word等)中“查找”某个单词或字符串、统计输入单词的词频以及统计段落的单词数等功能。由于查找字符串涉及到串匹配的内容,可以只实现查找某个单词的功能。
【实验目的】
熟练应用线性结构、树等数据结构。
【实验内容】
根据给定的文本文件(一个段落或者多个段落),建立对应的数据结构表示(综合使用线性结构、树等)。
基于已经建好的数据结构表示,对于用户提交的单词查询请求,返回所有匹配单词的位置(如第*段第*个单词)。
输入一个段落号,统计该段落的单词数。
输入一个单词,统计改单词的词频(在文件中出现的次数)。
一个简单的实现示例:
每一个段落用一个链表存储,称为段落链表,其中表中每个元素值即为一个单词;若干个段落链表头节点再链接起来成为一个链表,下面的文件及其表示如下图所示:
A simple example.
Lists store paragraphs.
Illustrated in Fig. 1.1
图1.1
当然,也可以有其他表示方式,例如,将每一个段落中的单词用树来表示,所有的段落列表也可以用树来表示。
所有的标点符号可以忽略。
【附录一】字符串操作函数
综合实验二: HTML文件中有序列表的语法树提取及基于树的检索
【实验说明】
HTML语言用来描述Web文档的通用格式和布局。详细的介绍可以参照一些书本或者网上资料。HTML中基本的语法单位称为标签。总的来说,标签用于指定内容的类别。对于每个类别,针对特定的内容,浏览器都有默认的显示方式。标签的使用语法是利用一对尖括号“”将标签名称包围起来。大部分标签都是成对的:包括开始标签和结束标签,如html和/html。开始标签和结束标签之间的信息称为标签的内容。这里仅考虑一个HTML语言的子集,该子集包含以下标签:
html, /html:标识文档的根元素;
head, /head:包含了文档的头部分,该部分提供了文档的相关信息,而没有提供文档的内容;
title, /title:文档的标题元素,其内容显示在浏览器的顶部;
body, /body:文档的主体部分,提供了文档的内容;
ol, /ol:有序列表标签,用于创建有序列表,列表中的条目是通过标签li, /li指定的。可以嵌套有序列表ol。标签ol后不能直接嵌套ol,而必须通过li嵌套。
例如,下面的示例演示了嵌套的有序列表:
html
head
title test for nested lists /title
/head
body
ol
li
Section 1
ol
li
Section 1.1
/li
li
Section 1.2
/li
/ol
/li
li
Section 2
/li
/ol
/body
/html
显示结果是:
Anhui Province
City Hefei
City Wuhu
Shanghai
对应的语法树为:
图2.1
通过上面的HTML语言子集,可以设计结构化的Web文档。对于这样的文档,我们可以提取其结构信息,建立对应的结构化数据存储,并可以在此基础上进一步做相应应用如查询操作等。
【实验目的】
熟练应用线性结构、树等数据结构。
【实验内容】
根据前面介绍的HTML语言子集,编写合法的文档,作为输入文件。也可以使用附录中所给的内容建立文档作为输入;
然后用相应算法提取其结构化信息,生成如图2.1的树形结构。
在已经建立的结构化存储数据结构上,做单词查询操作。输入一个查询关键字(如”City”),要求返回所有匹配的单词所在原HTML文档中的位置信息(如,City: Section 1.2 the first word and Section 1.2 the first word)。
下面给出一个实现的算法。这里考虑一个简单的情况,即body中只有一个有向列表,对于body标签中有多个列表的情况,通过简单的修改此算法可以解决:
对于这样一个HTML文档,html, head, title是无关紧要的,在读取文档内容时可以忽略。核心的结构化信息在有序列表中。
遇到第一个ol时,生成头节点,头节点内容为空,
文档评论(0)