`
guiqing85
  • 浏览: 168749 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

查找两个串的最大公共子串

阅读更多
查找两个串的最大公共子串
Java代码实现

/**
* 查找两个串的最大公共子串
*
* @param s1
* @param s2
* @return
*/
public static String commonMaxSubString(String s1, String s2) {
   String maxstr = "";
   String substring = "";
   if (s1.length() > s2.length()) { // s1为两个串中的短串;s2为长串
    String temp = s1;
    s1 = s2;
    s2 = temp;
   }
   int len = s1.length();
   ok: for (int i = len; i > 0; i--) {
    for (int j = 0; j < len - i + 1; j++) {
     substring = s1.substring(j, j + i);
     if (s2.indexOf(substring) != -1) {
      maxstr = substring;
      break ok; // 只要一找到最大子串,就退出这个for循环
     }
    }
   }
   return maxstr;
}
分享到:
评论

相关推荐

    JavaScript自定义函数实现查找两个字符串最长公共子串的方法

    本文实例讲述了JavaScript自定义函数实现查找两个字符串最长公共子串的方法。分享给大家供大家参考,具体如下: //查找两个字符串的最长公共子串 function findSubStr(s1,s2){ var S=sstr= ,L1=s1.length,L2=s2....

    PHP实现求两个字符串最长公共子串的方法示例

    在编程领域,最长公共子串(Longest Common Substring,LCS)问题是一个经典的问题,它寻找两个或多个字符串中的最长连续子序列,这个子序列同时存在于所有字符串中。在这个问题中,我们专注于PHP如何解决两个字符串...

    java实现求两个字符串最长公共子串的方法

    在编程领域,求解两个字符串的最长公共子串是一个经典问题,主要应用于文本处理、比较和搜索算法。这里我们将深入探讨如何使用Java实现这一方法,同时结合华为在线判题平台(OJ)的要求来编写代码。 首先,我们需要...

    查找最长公共子串

    如果一个字符串s是另一个字符串t的子串,并且s同时存在于两个或多个字符串中,那么s就被称为这些字符串的公共子串。例如,对于字符串"abcde"和"ace",它们的公共子串有"","a","c","e","ac","ce"。 现在,我们要寻找...

    找两字符串中最大子串

    在计算机科学中,查找两个字符串中的最大公共子串是一个非常实用的问题,它广泛应用于文本处理、生物信息学等多个领域。例如,在文本处理中,我们可能需要比较两篇文档之间的相似度;在生物信息学中,则可以用于比较...

    C语言求两个字符串的最长公共子串

    总结来说,C语言求两个字符串的最长公共子串主要依赖于字符串操作和动态查找算法。通过逐字符比较和记录最长匹配长度,我们可以找到这两个字符串的最长公共部分。这段代码提供了一个直观的实现方法,但它还可以...

    在一个字符串中查找子串的个数

    `indexOf()` 方法可以接受一个或两个参数: - **单参数**:`indexOf(String str)` - 只提供一个子字符串作为参数。 - **双参数**:`indexOf(String str, int fromIndex)` - 提供一个子字符串和一个起始索引值。从...

    查找主串中出现的子串的首位置.zip

    这两个算法相对于朴素的暴力匹配方法(时间复杂度O(n*m))有了很大的优化,尤其是在子串较长或需要查找多个子串时效果更明显。 总的来说,理解和掌握KMP和Sunday算法对于进行高效的字符串处理至关重要,它们是编程...

    js判断出两个字符串最大子串的函数实现方法

    总之,通过上述方法,我们可以在JavaScript中实现一个查找两个字符串最大公共子串的函数。该函数的算法思路是通过简单的双指针遍历实现的,适用于基本的字符串匹配需求。对于更复杂或性能要求更高的场景,建议采用...

    在母串中查找某子串出现的最后位置

    1. 初始化两个指针,一个是母串的起始位置,另一个是子串的起始位置。 2. 使用一个变量记录子串最后出现的位置,初始值设为-1,表示未找到子串。 3. 使用一个循环,每次移动母串指针,直到到达母串的末尾。 - 在...

    最长公共子串MFC实现

    最长公共子串(Longest Common Substring,LCS)是一个在计算机科学中常见的字符串处理问题,它涉及到查找两个或多个字符串中的最长连续子序列,这个子序列同时存在于所有字符串中。MFC,全称为Microsoft Foundation...

    C#最长公共子串(连续)算法(自创)

    LCS算法在文本处理、生物信息学(如DNA序列比对)、版本控制系统(查找两个文件的差异)等领域有广泛应用。 在提供的压缩包文件"Lcs"中,很可能包含了上述C#实现的源代码,你可以通过查看代码了解具体的实现细节和...

    找到两个字符串的最大公共字串

    查找两个字符串的最大公共子串,用到指针和函数的知识

    JavaScript实现求最大公共子串的方法

    标题中的"JavaScript实现求最大公共子串的方法"指的是在JavaScript编程语言中寻找两个字符串共有的最长子串。这个任务在计算机科学中属于字符串处理的一部分,常用于文本分析、比较和搜索算法。 描述中提到的...

    Java获取两个字符串中最大相同子串的方法

    Java获取两个字符串中最大相同子串的方法是Java编程语言中常见的问题之一,其目的是找到两个字符串中最长的公共子串。这种方法有多种实现方式,但今天小编要分享的是一种简单、实用的方法。 在了解这个方法之前,让...

    在随意给出的2个字符串中,找出它们共同的最长的子串

    在随意给出的2个字符串中,找出它们共同的最长的子串。 【输入】 输入文件的第一行为一个整数2,接下来有2行,每行为一个字符串,每个字符串的长度均小于255。 【输出】 输出只有一行,即:共同的最长子串,若有多个...

    字符串子序列工具:识别一对字符串的公共子串-matlab开发

    徐志平在 FEX 上的提交引起了我的兴趣。 我知道它必须更有效。 长字符串很常见,因此拥有高效的代码非常有意义。 您可能会发现这些工具对于检查 DNA 碱基串或检查学生提交的作业是否... 找到了两个最大长度 (16) 个字符

    最长公共子串(动态规划)1

    最长公共子串问题要求找出两个字符串中最长的连续公共子序列。这在各种文本处理和比较任务中非常有用,如DNA序列分析、拼写校正以及在不同编程语言间转换字符串等场景。 对于本题,动态规划方法通过构建一个二维...

    公共子序列-查找两个字符序列的所有公共子序列

    本主题聚焦于查找两个字符序列的所有公共子序列,这意味着我们要找出那些既存在于字符串A中又存在于字符串B中的连续字符序列,而无需考虑它们在原字符串中的相对位置。下面我们将深入探讨这一主题。 公共子序列问题...

Global site tag (gtag.js) - Google Analytics