求一个字符串中连续出现次数最多的字串 c++实现方法
来源:互联网 发布:mac装office软件要钱吗 编辑:程序博客网 时间:2024/05/29 17:31
int con_sub(const string &str, string &ret)
{
int max_time = 0;//连续出现的最多次数
int ret_len = 0;//连续出现的字符串的长度
vector<string> strs;//连续出现字符串的起始地址
int len=str.length();
string strtemp;
//生成后缀数组
for(int i=0; i<len; i++)
strs.push_back(str.substr(i,len-1));
//重复字符串的长度范围为1到(len+1)/2
for(int i=1; i<=len; i++)
{
//当重复的字符串长度为i的时候,如果是连续出现的,那么第j和第j+i个后缀数组前面为重复的字符串
for(int j=0; j+i<=len-1; j+=i)
{
int k = j;
int temp_time = 1;
while(k+i <= len-1)
{
if(strs[k].substr(0,i)==strs[k+i].substr(0,i))
{
temp_time++;
k += i;
}
else
{
k += i;
}
}
if(temp_time > max_time)
{
max_time = temp_time;
ret_len = i;
strtemp = strs[j].substr(0,i);
}
}
}
ret = strtemp;
return max_time;
}
////////////////////////////在借鉴别人的基础之上来写的其实有一些疑问还是假如,一个字符串中没有连续的也就是说都是单个出现的子串,本程序只是返回了其中一个,还有就是如果程序中出现两个字串出现的最多次数一样多,我们只返回其中一个。。。
- 求一个字符串中连续出现次数最多的字串 c++实现方法
- 求一个字符串中连续出现次数最多的字串
- 求一个字符串中连续出现次数最多的字串
- 求一个字符串中连续出现次数最多的字串
- 求一个字符串中连续出现的次数最多的字串
- 求一个字符串中连续出现次数最多的字串.[面试宝典14.5节]
- 求一个字符串中连续出现的次数最多的子串[C语言实现]
- 求一个字符串中连续出现次数最多的…
- 求一个字符串中连续出现次数最多的…
- 字符串中连续出现次数最多的字串
- 求一个字符串连续出现次数最多的子串
- 求一个字符串中连续出现并且出现次数最多的子串.
- 字符串---求一个字符串中连续出现次数最多的子串
- 求字符串中连续出现次数最多的子串
- 求字符串中连续出现次数最多的子串
- 求一个字符串中出现次数最多的子串(并不是连续的)
- 编程珠玑(四)求一个字符串中连续出现的次数最多的子串
- 求一个字符串中连续出现的次数最多的子串
- 页面传递Json对象,后台解析
- Java正则表达式入门
- 并查集
- CAN比较
- 非典型SOHO的苦与乐
- 求一个字符串中连续出现次数最多的字串 c++实现方法
- 以jvm -server 模式运行java程序
- mkdir: Permission denied: user=root, access=WRITE, inode="/user":hdfs:hadoop:drwxr-xr-x
- IOS完整学习路线
- cocos2d-x-3.2 如何创建新工程
- Autoconf和Automake生成Makefile
- OpenERP报表浅析
- WCF学习心得------(一)什么是WCF
- JAVA从jar包中读取资源文件