gpt4 book ai didi

java - 查找两个字符串中的共同字母(Java)

转载 作者:行者123 更新时间:2023-12-02 09:09:11 24 4
gpt4 key购买 nike

目标是找到两个给定字符串中的共同字母 s1s2 .

常用符号字符串的长度必须至少为两个字母。

输入示例

String s1 = "BAABBBAABBA";
String s2 = "BBBABBBAA";

缩小解决方案范围的步骤

  1. 步骤:
s1 = BAA**BBBA**ABBA
s2 = **BBBA**BBBABA

len = 4
  • 步骤:
  • s1 = BAA____A**BBA**
    s2 = ____B**BBA**BA

    len = 3

    我是一个初学者,在这个案例上挣扎了 4 个小时。有人可以帮我解决这个问题吗?很高兴收到 Java 解决方案。

    提前致谢。

    最佳答案

    也许下面的代码可以帮助你。这个想法是从一个字符串创建所有可能的子字符串,以检查该子字符串是否包含在另一个字符串中。

    import java.util.HashSet;
    import java.util.Set;

    public class Test {

    public static void main(String[] args) {

    String s1 = "BAABBBAABBA";
    String s2 = "BBBABBBAA";

    Set<String> foundSet = new HashSet<>();

    for (int start = 0; start < s1.length() - 1; ++start) {

    for (int end = start + 2; end <= s1.length(); ++end) {
    String subString = s1.substring(start, end);
    if (s2.contains(subString)) {
    foundSet.add(subString);
    }
    }
    }

    foundSet.forEach(System.out::println);
    }
    }

    关于java - 查找两个字符串中的共同字母(Java),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59543967/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com