读书人

c++ STL的有关问题

发布时间: 2013-08-04 18:26:16 作者: rapoo

c++ STL的问题
尊敬的各位同志,你们好!我现在在做一个程序,里面要用到字符串匹配的东西,要把一个文本集里面的所有文档的词汇和一个词典的词汇进行对比,从而找出词典中这个词汇的重复度,请问有什么高效的算法来解决这个问题 C++ STL 文档 算法
[解决办法]
map
[解决办法]
有这样的算法啊

++笑纳
[解决办法]
[size=14px]给你写了一个算法,这个是求两个字符数组的匹配情况,符合则返回字符数组a.然而b数组是原数组,a数组和b数组对比,如果符合就 return a。

#include <algorithm>
#include <cmath>
#include <cstdlib>
#include <iostream>
#include <string.h>
#include <algorithm>
#include <cmath>
using namespace std;
char *chack(char a[],char b[]) //指针函数,返回值可以被输出
{ int c=strlen(a);
int i=0;
char *p=a,*q=b;
while(*p!='\0'&&*q!='\0')
{
if(*p==*q)
{ *p++;
i++;
}
else
*q++;
}
if(i==c)
return a;
}
int main()
{
char a[10000],b[10000];
int n,c,k=1;
cin>>b;


sort(b,b+strlen(b));
cin>>a;
sort(a,a+strlen(a));
cout<<chack(a,b);

system("PAUSE");
return 0;
}[/size]
[解决办法]
把和 去掉
[解决办法]
boost里的库
tokenizer Xpressive,regex, Spirit

看你什么需求了,里面Spirit最强大,但作为一个框架,理解起来也难一些,编译超级耗时,如果需求较为简单,用regex一般就够了,Xpressive支持regex的所有功能,也支持spirit类似的静态方法,当然没spirit那么强了

读书人网 >C++

热点推荐