- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
《数据结构课程设计》实验报告
班姓名 学号实验目: 实验目的:在于使学生对复杂的数据结构容易理解、掌握,并有助于在实际编程过程中应用。锻炼学生算法书写、上机实习规范、程序调试技巧、设计说明书的整理等方面的内容,为以后从事编写复杂软件及软件开发工作打下基础实验内容:该题目是对字符串和文件方面知识的运用,对英文文章实现查找、插入、删除、替换、定位等操作对英文文章实现字符串模式匹配算法和文件操作算法。 (一) 需求分析
1.本程序中,a-z组成),单词量很大,达到120 多万的单词,而且还有很多重复的单词。此外,我们现在还有一些 Document,每个Document 包含一些英语单词。针对这个问题,请你选择合适的数据结构,组织这些数据,使时间复杂度和空间复杂度
2.演示程序以用户和计算机的对话方式执行,即在计算机终端上显示“信息”之后,由用户在。
3.程序执行的命令包括:
(1);(2)NO,检索结果存储在SearchWordInvocabulary_Result.txt文件夹中;(3)Dictionary 中所有以这个单词为前缀的单词,检索结果储存在TotPrefixWord_Result.txt 文件夹中;(4) Dictionary 中以这个单词为前缀的单词的出现频率最高的10 个单词,对于具有相同出现次数的情况,按照最近(即最后)插入的单词优先级比较高的原则输出,检索结果储存PrefixFrequence_Result.txt 文件;(5)输出 Dictionary 中出现次数最高的10 个单词,检索结果存储在MostFrequenceWord.txt 文件中;(6)输入一个word, 检索出哪些Document 包含这个word,输出这些Document 的DocumentID,检索结果存储在WordInDocument_Result.txt文件中;(7)在第六问基础上,检索出同时包含两个相邻word 的DocumentID,检索结果存储在TwoWordInDocument_Result.txt文件中;(8)在第七问基础上,检索多个word的DocumentID,检索结果存储在MultiWordInDocument_Result.txt文件中。
4.测试数据Vocabulary 文件夹下的vocabulary.txt 是英文字典的数据总共有120 多万个单词,即问题(1)~(5)中单词库。Document 文件夹下的document.txt 是用于(6),(7),(8)题中的Document 数据。并和正确结果进行比较。
(二) 概要设计
为了实现上述操作,应以为存储结构。
1.?? 基本操作:
typedef struct tree typedef struct tr{}
? 操作结果:,若成功就2. 本程序包含:
(1);
(2);
(3);
(4)?(三) 详细设计
1.元素类型,结点类型和指针类型:
typedef struct tree
{
int elem;
struct tree *next;
}num;
typedef struct tr{
char data;
int weight;
struct tr *lchild,*rchild,*parent;
num *na;
}jd;jd *p,*q,*root,*root1,*ss[10],*so;int s=0;int k,u,n=0;
FILE *fp,*fa,*ff;
char a,ch;??????
?2.每个模块的分析:
(1):
void buildtree(jd *root,FILE *fp)
{
jd *p,*q;
char ch;int i=0;
p=root;q=root;
ch=fgetc(fp);
while(ch!=EOF)
{
if(ch!=\n)
{
if(p-lchild==NULL)
{
p-lchild =(jd *)malloc(sizeof(jd));
q=p; p=p-lchild ;
p-parent =q; p-data =ch;
p-weight =0; p-lchild=NULL;
p-rchild=NULL;
ch=fgetc(fp);
}
else
{
q=p;p=p-lchild ;
while(p!=NULLp-data!=ch) {q=p;p=p-rchild ;}
if(p==NULL)
{
p=(jd *)mal
文档评论(0)