嘿,亲!知识可是无价之宝呢,但咱这精心整理的资料也耗费了不少心血呀。小小地破费一下,绝对物超所值哦!如有下载和支付问题,请联系我们QQ(微信同号):813200300
本次赞助数额为: 2 元微信扫码支付:2 元
请留下您的邮箱,我们将在2小时内将文件发到您的邮箱
基于线性表和二叉排序树的低频词过滤系统
对于一篇给定的英文文章,分别利用线性表和二叉排序树来实现单词频率的统计,实现低频词的过滤,并比较两种方法的效率。
(1) 读取英文文章文件(InFile.txt),识别其中的单词。
(2) 分别利用线性表和二叉排序树构建单词的存储结构。当识别出一个单词后,若线性表或者二叉排序树中没有该单词,
则在适当的位置上添加该单词;若该单词已经被识别,则增加其出现的频率。
(3) 统计结束后,删除出现频率低于五次的单词,并显示该单词和其出现频率。
(4) 其余单词及其出现频率按照从高到低的次序输出到文件中(OutFile.txt),同时输出用两种方法完成该工作所用的时间。
void jishu(SqList &L,danci e)
{
int i;
for(i=1;i<=L.length;i )
{
if(strcmp(L.a[i].word,e.word)==0)
{
L.a[i].count ;
break;
}
}
if(L.length==0||i==L.length 1)
{
L.length ;
int j=L.length;
L.a[j]=e;
}
}
void count_five(SqList &L)
{
int i,n=1;
cout<<"出现次数小于五次的单词"<<endl;
cout<<setw(15)<<setw(15)<<endl;
for(i=L.length;i>0;i--)
{
if(L.a[i].count<5)
{
cout<<L.a[i].word<<setw(15)<<L.a[i].count<<setw(15)<<endl;
for(int j=i;j<=L.length-1;j )
{ L.a[j]=L.a[j 1];}
--L.length;
}
}
}