java 求最长重复子串_给定一个字符串,求出其最长的重复子串。
#include
#include
#include
#include
using namespace std;
//给定一个字符串,求出其最长的重复子串
//方法一
string lsubstr_1(const string & str)
{
vector vs;
for (int i = 0; i < str.size(); i++)
vs.push_back(str.substr(i));
sort(vs.begin(), vs.end());
int max = 0;
int flag = 0;
for (int i = 0; i
{
int j = 0;
while (vs[i][j] == vs[i + 1][j] && j
j++;
if (j>max)
{
max = j;
flag = i;
}
}
return vs[flag].substr(0, max);
}
//方法二
string lsubstr_2(const string & str)
{
string maxstr;
for (int i = 0; i < str.size();i++)
for (int j = (str.size() - i); j >=1 ; j--)
{
string subs = str.substr(i, j);
int front = str.find(subs);
int back = str.rfind(subs);
if (front != back && subs.size() > maxstr.size())
maxstr = subs;
}
return maxstr;
}
//方法三
string lsubstr_3(const string & str)
{
string maxstr;
for (int i = 0; i < str.size(); i++)
for (int j = 0; j < i; j++)
{
string temp;
int k = j;
int m = i;
while (str[m] == str[k] && i
{
m++; k++;
}
temp = str.substr(j, k - j);
if (temp.size()>maxstr.size())
maxstr = temp;
}
return maxstr;
}
void main(void)
{
string test;
//cin >> test;
getline(cin, test);
cout << lsubstr_1(test) << endl;
cout << lsubstr_2(test) << endl;
cout << lsubstr_3(test) << endl;
}
java 求最长重复子串_给定一个字符串,求出其最长的重复子串。相关推荐
- Java中找出s字符串的回文_给定一个字符串 s,找到 s 中最长的回文子串。
题目描述:给定一个字符串 s,找到 s 中最长的回文子串.你可以假设 s 的最大长度为 1000. 思路: 判断s[i..j]是否是回文字符串,依赖于s[i+1...j-1],这种一个问题的结果依赖于 ...
- 最长回文子串_【每日编程142期】最长回文子串II
每日编程中遇到任何疑问.意见.建议请公众号留言或直接撩Q474356284(备注每日编程) 今日问题: 给定一个字符串 s,找到 s 中最长的回文子串.你可以假设 s 的最大长度为1000. 示例 1 ...
- (java)给定一个字符串 s ,请你找出其中不含有重复字符的 最长子串 的长度。
给定一个字符串 s ,请你找出其中不含有重复字符的 最长子串 的长度. public class LengthOfLongestSubstring {public int lengthOfLonges ...
- 【每日一练及解题思路V1】给定一个字符串,找出其中不含重复字符的最长子串的长度
一.题目:给定一个字符串,找出其中不含重复字符的最长子串的长度: 二.举例: 比如"abcdefgh",不含重复字符的最长子串为eacdb,长度为8: 比如"abceac ...
- 给定一个字符串 s ,请你找出其中不含有重复字符的 最长子串 的长度
题目 给定一个字符串 s ,请你找出其中不含有重复字符的 最长子串 的长度. 示例 1: 输入: s = "abcabcbb" 输出: 3 解释: 因为无重复字符的最长子串是 &q ...
- python练习题:给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度
题目: 给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度. 题目解析: 有一个字符串,长度不定, 要找出不重复字符串的长度,我们可以这么假设,先找到第一个下标,然后从后面拿到元素的下标对 ...
- 给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度。
给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度. 示例 1: 输入: s = "abcabcbb" 输出: 3 解释: 因为无重复字符的最长子串是 "ab ...
- 给定一个字符串,判断该字符串中是否包含某个子串.如果包含,求出子串的所有出现位置. 要求:从键盘输入两个字符串,第一个是给定的字符串,第二个是子串。
给定一个字符串,判断该字符串中是否包含某个子串.如果包含,求出子串的所有出现位置. 要求:从键盘输入两个字符串,第一个是给定的字符串,第二个是子串. 输入 abcd23abc34bcd bc 输出 1 ...
- 给定一个字符串,返回最长的元音字母(aeiou)子串的长度
题目描述: 给定一个字符串,返回最长的元音字母(aeiou)子串的长度. 测试用例1: 输入为:asdbuiodea 输出为:3 因为uio三个元音字母最长 d ...
最新文章
- 【caffe解读】 caffe从数学公式到代码实现1-导论
- hive防止数据误删
- MCtalk 创业声音丨辉禹科技合伙人孔杰:投资和创业都是思维的放大器
- 微服务之迷思--转几位大牛的文章
- html文字向上移动10px,HTML文字移动特效代码
- 23种设计模式之责任链模式
- java mvc下载文件_Springmvc实现文件下载2种实现方法
- 麦克纳姆轮速度分解再分析
- iOS开发学习之NSFetchedResultsController
- 《深入浅出struts》读书笔记(3)
- java 高级工程师要求
- 6 检验并打印魔方矩阵c语言,检验并打印魔方矩阵
- 内存超频时序怎么调_超频讲解:内存时序设置说明二
- python 16进制转中文_求助~ 16进制数据转不了汉字
- Vue.js(二) 模板语法
- 导出 服务器 excel文件,服务器数据库导出excel文件格式
- 语音聊天源码开发之常用动画效果的实现
- 组合预测 | MATLAB实现EMD-KPCA-LSTM、EMD-LSTM、LSTM多变量时间序列预测对比
- 胜不骄 败不馁 心胸似大海宽广
- 去哪些网站能够查阅医学最新文献?