// 找一个字符串的最大子串public static void main(String[] args) {String s1 = "qwerabcdtyuiop";String s2 = "xcabcdvbn";String stringMax = stringMax(s1, s2);System.out.println("最大的相同子字符串是:" + stringMax);}/*** 找出两个字符串中最大的相同子字符串* * @param s1* @param s2* @return*/private static String stringMax(String s1, String s2) {// 记录相同子字符串String sameString = null;// 比较两个字条串的长度,这里是设置S1的长度大于S2的长度if (s1.length() < s2.length()) {// 如果s2的长度大,那么就将两个字符串进行替换String temp = s1;s1 = s2;s2 = temp;}// 如果s2就被包含在s1中,那么这两个字符串最大的子串就是s2boolean isContains = s1.contains(s2);if (isContains) {return s2;} else {boolean b1 = false;// 如果s2不是两个字符串最大的子类,那么再进行循环查找for (int i = 0; i < s2.length(); i++) {for (int j = 0; j <= i; j++) {// 获取每次进行比较的子字条串String str = s2.substring(j, s2.length() - i + j);System.out.println("第" + i + "次比较:" + str);if (s1.contains(str)) {sameString = str;b1 = true;break;}}// 如果比较到s2中最小的为2的时候还没有相同的字符串,我们就默认没相同的子字符串if (s2.substring(0, s2.length() - i).length() == 2) {System.out.println("没有相同的子字符串");b1 = true;break;}if (b1 == true)break;}}return sameString;}

编译运行:

分析原理图:

String字符串处理详细说明:点击打开查看

java基础—找出两个字符串中最大的子串相关推荐

  1. 快速找出两个字符串中所有相同的字符

    面试时看到一个试题, 编写算法, 快速找出两个字符串中所有相同的字符. 现实现如下: 1. 利用TreeSet来查找是否有相同的字符(之前是利用TreeSet来查找) 2. 利用HashSet来查找是 ...

  2. 找出两个字符串中最大子字符串,如abractyeyt,dgdsaeactyey的最大子串为actyet

    // 最大子字符串.cpp : 定义控制台应用程序的入口点. // //找出两个字符串中最大子字符串,如"abractyeyt","dgdsaeactyey"的 ...

  3. 找出两个字符串中最长的相同子字符串

    //找出两个字符串中最长的相同子字符串public class Stringdemo {public static void main(String[] args) {String str1 = ne ...

  4. 找出两个字符串中所有共同的字符_面试中的两个字符串问题竟给我整懵了?!| 原力计划...

    作者 | 一路向维 责编 | 王晓曼 出品 | CSDN博客 昨天收到通知,今天有个面试,一家魔都中型电商公司,名字咱就不说了.内心顿时踌躇满志.跃跃欲试,晚上还翻看面试题,做准备. 到了目的地之后, ...

  5. java找出两个字符串中所有共同的子串_【Java笔记】

    Leetcode 1.两数之和 给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标. 你可以假设每种输入只会对应一个答案.但是, ...

  6. 高效的找出两个List中的不同元素

    转自同名博文,未知真正出处,望作者见谅 如题:有List<String> list1和List<String> list2,两个集合各有上万个元素,怎样取出两个集合中不同的元素 ...

  7. js 快速找出两个数组中的不同元素或对象

    js 快速找出两个数组中的不同元素 var arr1 = [0,1,2,3,4,5]; var arr2 = [0,4,6,1,3,9]; function getArrDifference(arr1 ...

  8. C语言找出两个字符串唯一不同的一个字符(附完整源码)

    C语言找出两个字符串唯一不同的一个字符 C语言找出两个字符串唯一不同的一个字符完整源码(定义,实现,main函数测试) C语言找出两个字符串唯一不同的一个字符完整源码(定义,实现,main函数测试) ...

  9. 汇编语言(十五)之找出两个数组中的相同元素

    找出两个数组中的相同元素,并且输出 程序运行: 代码: datas segmentA dw -1,-2, 3, 4, 5, 6, 7, 8, 9, 10,-11, 12, 13, 14, 15ACou ...

最新文章

  1. linux 安装系统划分lvm分区
  2. Redis进阶-Redis集群 【高可用切换】【cluster-require-full-coverage】集群是否完整才能对外提供服务
  3. Vscode----热门插件超实用插件汇总(史上最全)
  4. OWASP依赖性检查Maven插件–必须具备
  5. 2008r装mysql_RMySQL安装及操作(详细版)
  6. 安装,使用node和npm,切换镜像源cnpm
  7. windowXP 任务计划无法启动 错误代码:0X80041315
  8. 区块链基础学习(一)
  9. mysql数据设置浮动_浮动float
  10. EBMIDE——打印格式管理
  11. 北上广深不相信电单车 共享单车终究走向“死“胡同?
  12. 域策略(3)——限制用户使用USB移动存储设备
  13. MySQL海量运维管理如何保障京东大促?
  14. python中大于多少小于怎么表示_Python While语句大于/小于符号
  15. iOS屏幕旋转技术点及解决方案总结
  16. 山寨起源——河神的全斧头
  17. malloc(): corrupted top size 解决
  18. 回炉篇5—数据结构(4)之冒泡、选择、插入排序算法
  19. 华为和华三(H3C),你总要选一个才行
  20. UIlabel调整行间距

热门文章

  1. 旷视研究院张弛:行人重识别及其应用
  2. 港中文开源基于PyTorch的多任务人脸识别框架
  3. 当前位置 计算机英语,计算机英语_文章
  4. 收藏 | 在算法工程师的道路上,你掌握了什么概念或技术使你感觉自我提升突飞猛进?...
  5. 计算机视觉论文-2021-07-09
  6. 笔记 | 机器学习《概率图模型》,手推笔记已186页!
  7. 面向小姐姐的编程——JAVA面向对象之封装(一)
  8. 疯狂为《英伟达深度学习学院半日免费初级课程》打Call
  9. java 模拟栈底层用数组_java用数组模拟栈
  10. BoostrapTable的refresh和refreshOptions区别