找出两个字符串中最大的相同的字串 找出两个字符串中最大的相同的字串
2022/7/25 23:25:34
本文主要是介绍找出两个字符串中最大的相同的字串 找出两个字符串中最大的相同的字串,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
package Stringtest; import java.util.ArrayList; import java.util.Arrays; public class Demo02 { public static void main(String[] args) { String str1 = "dwaddddwaehellodwadwa"; String str2 = "grddehellogrddwadgdddddwadddd"; //方法一 ArrayList<String> list1 = new ArrayList<>(); Demo02 demo02 = new Demo02(); list1 = demo02.find(str1,str2); demo02.sort(list1); System.out.println(list1.subList(0,2)); // 方法二 // ArrayList<String> list1 = new ArrayList<>(); // ArrayList<String> list2 = new ArrayList<>(); // ArrayList<String> list3 = new ArrayList<>(); // Demo02 demo02 = new Demo02(); // list1 = demo02.find(str1); // list2 = demo02.find(str2); // //分别遍历两个list中的字符串,如果有重合的字符串,将其拿出来保存在另一个list中 // for (int i=0;i<list1.size();i++){ // for (int j=0;j<list2.size();j++){ // if (list1.get(i).equals(list2.get(j))){ // list3.add(list1.get(i));} // } // } // // System.out.println(list3.get(0).length()); // System.out.println(list3); // System.out.println(list3.get(0)); //二思路 } //将一个字符串变成许多唯一的子串 public ArrayList<String> find(String str1){ int len1 = str1.length(); ArrayList<String> list = new ArrayList<>(); for(int i=0;i<len1;i++){ for (int j =i+2;j<=len1;j++){ list.add(str1.substring(i,j)); if (j==len1)list.add(str1.substring(i)); } } return list; } //方法重写一下算法 public ArrayList<String> find(String str1,String str2){ String str_max = str1.length()>=str2.length()?str1:str2; String str_min = str1.length()<str2.length()?str1:str2; int len = str_min.length(); ArrayList<String> list = new ArrayList<>(); for(int i=0;i<len;i++){ for (int j =i+2;j<=len;j++){ if (str_max.contains(str_min.substring(i,j))){list.add(str_min.substring(i,j));} } } return list; } //对list3中字符串的按照长度进行冒泡排序 public void sort(ArrayList<String> list3){ for (int i =0;i<list3.size()-1;i++){ for (int j =0;j<list3.size()-1-i;j++){ if (list3.get(i).length()>list3.get(j).length()){ String temp = list3.get(i); list3.set(i,list3.get(j)); list3.set(j,temp); } } } } }
这篇关于找出两个字符串中最大的相同的字串 找出两个字符串中最大的相同的字串的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-05-13TiDB + ES:转转业财系统亿级数据存储优化实践
- 2024-05-09“2024鸿蒙零基础快速实战-仿抖音App开发(ArkTS版)”实战课程已上线
- 2024-05-09聊聊如何通过arthas-tunnel-server来远程管理所有需要arthas监控的应用
- 2024-05-09log4j2这么配就对了
- 2024-05-09nginx修改Content-Type
- 2024-05-09Redis多数据源,看这篇就够了
- 2024-05-09Google Chrome驱动程序 124.0.6367.62(正式版本)去哪下载?
- 2024-05-09有没有大佬知道这种数据应该怎么抓取呀?
- 2024-05-09这种运行结果里的10.100000001,怎么能最快改成10.1?
- 2024-05-09企业src漏洞挖掘-有意思的命令执行