JAVA编程练习--力扣:字符串的最大公因数
示例 1: 输入:str1 = “ABCABC”, str2 = “ABC” 输出:“ABC” 示例 2: 输入:str1 = “ABABAB”, str2 = “ABAB” 输出:“AB” 示例 3: 输入:str1 = “LEET”, str2 = “CODE” 输出:""
提示: 1 <= str1.length <= 1000 1 <= str2.length <= 1000 str1[i] 和 str2[i] 为大写英文字母
3.代码
class Solution {
public String gcdOfStrings(String str1, String str2) {
if (!(str1 + str2).equals(str2 + str1)) return "";
int len1 = str1.length(), len2 = str2.length();
if (len1>len2) {
while (len2 != 0) {
int rem = len1 % len2;
len1 = len2;
len2 = rem;
}
return str2.substring(0, len1);
} else {
while (len1 != 0) {
int rem = len2 % len1;
len2 = len1;
len1 = rem;
}
}
return str2.substring(0, len2);
}
}
下一篇:
设计模式常用的七大原则总结
