求c语言大神帮助!!!求 最快 算法啊!!!从上千万的单词里面找出重复的单词,并算每个重复单词重复次数

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了求c语言大神帮助!!!求 最快 算法啊!!!从上千万的单词里面找出重复的单词,并算每个重复单词重复次数相关的知识,希望对你有一定的参考价值。

求帮助!!!

已通过测试,望采纳。
#include <stdio.h>
#include <string.h>
main()
char string[100000],select[15];
int n=0;
char *p,*q;
int i,length,flag;
printf("Input a string:");
gets(string);
printf("Input the string you want to be changed:");
scanf("%s",select);
length=strlen(select);
p=q=string;
for(;*p;p++)
if(*p==select[0])

flag=1;
q=p;
for(i=0;i<length;i++)
if(*q!=select[i])
flag=0;
break;

else q++;

if(flag==1)
n++;
p=q-1;


printf("The word %s comes %d times in the string.\n",select,n);
追问

其实是这样的,只给了一个文件,里面有上千万个单词,不是这要找一个特定的sleect,而是把其中所有出现过重复的单词都找到, 还有时间要求算法越快越好 大神要是知道算法的话告诉我算法就行 要是有具体c语言小弟就更加感谢了!

追答

这样我就只有最笨的办法了。
打开文件——读取单词——放入单词记录字符串数组——每读取一次与字符串数组的单词比较——重复则记录并放入重复单词字符串数组——不重复继续补充放入单词记录字符串数组——循环循环
时间空间复杂度肯定不乐观。
好的方法没有了,咱不是大神,坐等大神继续回答。

参考技术A 1,先对单词排序,可采用hash树进行排序。
2,排序后遍历一遍就可以把重复的单词找出来而且计算出重复次数。
个人见解
参考技术B 作者知道答案了吗?分享一下

从exploit-db网站上下载的exploit-code该怎么利用啊?求大神帮帮忙!

从exploit-db网站上下载的exploit-code该怎么利用啊?求大神帮帮忙!,下载的格式都是.c,txt,或者html的,而metasploit下的exploit都是.rb格式的,纠结了很久了,全部身家就几分了,希望哪位好心人能帮帮忙,告诉小弟大概的一个使用方法,感激不尽

参考技术A 同样的问题,坐等大神指导本回答被提问者采纳

以上是关于求c语言大神帮助!!!求 最快 算法啊!!!从上千万的单词里面找出重复的单词,并算每个重复单词重复次数的主要内容,如果未能解决你的问题,请参考以下文章

C语言大神求指点啊,帮忙改正以下商品查询函数search();

求一个最快的C语言算素数程序

c语言编程题 利用指针编写函数用选择法对整数数组排序(降序)。 求大神帮忙啊!!!谢谢

求帮助,水滴到底怎么导入字典?大神显灵吧、、、

C语言编程学生成绩统计程序修改,求大神帮助

本人碰见一道C语言难题,寻大神帮助,利用C语言实现:求任意两个集合的交集、并集、差集,