找出一个字符串中由同一个字符组成的最长子串
这是在百度知道中看到的一个问题,感觉有点意思,就拿来练练手
思路也简单:
1.定义给个中间变量
2.用正则匹配有连续的字符
3.如果匹配的字符比中间变量长就换掉中间变量
4.在上次匹配处继续循环匹配
5.如果连续的字符都是一样长就选择最前面的
以下为实现代码
String str = "http://www.flickr.com/photos/chaddles/21111402990826/";
String longest="";
String eg="((.)\\2*)";
Matcher m = Pattern.compile(eg, Pattern.CASE_INSENSITIVE).matcher(str);
System.out.println("begin...");
String each="";
while (m.find()) {
each=m.group(1);
if(each.length()>longest.length())longest = each;
}
System.out.println("longest="+longest);
System.out.println("end!");
分享到:
相关推荐
在随意给出的2个字符串中,找出它们共同的最长的子串。 【输入】 输入文件的第一行为一个整数2,接下来有2行,每行为一个字符串,每个字符串的长度均小于255。 【输出】 输出只有一行,即:共同的最长子串,若有多个...
把两个源字符串分别放在两个文本文件里,再把这两个文本文件放在程序所在目录下,运行时输入两个文件名就可以了.
本主题将深入探讨如何使用C++语言来实现一个算法,该算法能够找出两个字符串中的最大公共子串。公共子串是指同时存在于两个或多个字符串中的任意非空字符序列。在本问题中,我们目标是找到最长的这样一个子串。 ...
找出一个字符串的最长子串,很简单.......
本文实例讲述了C语言求两个字符串的最长公共子串的方法。分享给大家供大家参考。具体实现方法如下: #include "stdio.h" #include "string.h" #include "stdlib.h" void getCommon(char str1[],char str2[],char * ...
- **目标**:找出这两个字符串的最长公共子串。 #### 2. 算法步骤 该算法的核心思想是通过双重循环遍历两个字符串,逐个字符进行比较,以找到最长的匹配子串。 - **初始化**:首先设置两个指针`flag1`和`flag2`,...
这个问题的目标是找出给定字符串中的最长子串,这个子串中的所有字符都不重复。这是一个在编程面试和算法竞赛中常见的问题,尤其与动态规划、滑动窗口和哈希映射等技术有关。 描述 "在字符串中找到最长的不包含重复...
2. **遍历字符串**:首先遍历第二个字符串 `str2` 的每个字符,然后对于每个字符位置,再次遍历该位置之后的所有子串,并检查这些子串是否也存在于第一个字符串 `str1` 中。 3. **存储子串**:如果找到了相同的子串...
总结,找出字符串中连续最长的数字串并输出其长度,是字符串处理中的一个基础问题,它涉及到字符串遍历、条件判断和动态规划等编程技巧。通过学习和实践这类问题,可以提高对字符串操作的理解和编程能力。
编写程序求出所给出的字符串中最长的字母子串(以非字母隔开)。例如字符串"Apple$12pear watermelon $ # Banana"中最长的字母子串为"watermelon"。有详细的解释
### 在字符串中查找最长重复子串的探讨 #### 背景与问题定义 本篇文章主要探讨了如何在给定的字符串中找到最长的重复子串。例如,在字符串 "t1t1" 中,最长重复子串为 "t1";而在 "cabcabca" 中,最长重复子串可以...
# 给定一个字符串,找出不含有重复字符的最长子串的长度 # 示例 1: # 输入: "abcabcbb" # 输出: 3 # 解释: 无重复字符的最长子串是 "abc",其长度为 3 # 示例 2: # 输入: "bbbbb" # 输出: 1 # 解释: 无重复字符的...
首先,我们要明确问题的要求:输入一个字符串,找出其中重复且长度最长的子串。例如,对于字符串 "yyabcdabjcabceg",我们需要找到子串 "abc",因为它在原字符串中出现了两次,并且长度最长。同时,我们还需要输出 ...
无重复字符的最长子串 给定一个字符串 s ,请你找出其中不含有重复字符的 最长 子串的长度。
在编程领域,求解两个字符串的最长公共子串是一个经典问题,主要应用于文本处理、比较和搜索算法。这里我们将深入探讨如何使用Java实现这一方法,同时结合华为在线判题平台(OJ)的要求来编写代码。 首先,我们需要...
在编程领域,"最长子串"通常是指在一个或多个字符串中找到共享的、最长的连续字符序列。这个概念广泛应用于文本处理、数据挖掘以及算法竞赛等场景。在本例中,我们将探讨如何编写一个程序来找出给定字符串集合中的...
在本题目中,任务是使用定长顺序存储结构表示串,并找出两个字符串的最长公共子串。这是一个典型的字符串处理问题,通常在计算机科学和编程领域出现。以下是对这个任务的详细解析: 首先,我们需要理解“定长顺序...
在Python编程语言中,求解两个字符串的最长公共子串是一项常见的字符串处理任务。这个问题的解决方案通常基于动态规划思想,即将问题分解为更小的子问题,并存储子问题的解以便于后续使用,从而避免重复计算。下面...
在编程领域,最长公共子串(Longest Common Substring,LCS)问题是一个经典的问题,它寻找两个或多个字符串中的最长连续子序列,这个子序列同时存在于所有字符串中。在这个问题中,我们专注于PHP如何解决两个字符串...
本问题聚焦于找出字符串中的最长重复子串及其出现位置,这是一个典型的字符串处理任务,具有较高的实用价值。 最长重复子串是指在一个字符串中,连续重复出现次数最多的子串。解决这个问题通常需要使用滑动窗口、...