搜狐快站做网站教程,多少钱要交税,网站 续费,网站建设是 口号要求#xff1a;2个英文字符串中#xff0c;取相同的大于等于4个字母的词组
比如#xff1a; 字符串1#xff1a; xingMeiLingabcdef WorldHello, 字符串2#xff1a;mnjqlup WorldLingLing xingMeiLingHello 获取交接#xff1a; [xingMeiLing…要求2个英文字符串中取相同的大于等于4个字母的词组
比如 字符串1 xingMeiLingabcdef WorldHello, 字符串2mnjqlup WorldLingLing xingMeiLingHello 获取交接 [xingMeiLing, Hello, World] 实现方式递归
// 前提是对比两个文本的长短参数1是短的 参数2,是长的
private static SetString getNewWords(String shortWord, String longWord){SetString result new HashSet();while (shortWord.length()5) {String wordFirst shortWord.substring(0,4);if(longWord.contains(wordFirst)){for (int i 4; i shortWord.length() ; i) {if (longWord.contains(wordFirstshortWord.charAt(i))){wordFirst wordFirstshortWord.charAt(i);}else {break;}}result.add(wordFirst);shortWord shortWord.substring(wordFirst.length());getNewWords(shortWord,longWord);}else {shortWord shortWord.substring(1);}}return result;
} 闲言碎语 递归比较适合数据量不大的毕竟它比较占内存