题目
class Solution {
public String gcdOfStrings(String str1, String str2) {
if(!(str1+str2).equals(str2+str1)) return "";
int len = Math.min(str1.length(),str2.length());
for(int i=len;i>0;i--){
String tmp = str1.substring(0,i);
if(str1.split(tmp).length==0 && str2.split(tmp).length==0){
return tmp;
}
}
return "";
}
}
class Solution {
public String gcdOfStrings(String str1, String str2) {
return h(str1,str2);
}
public String h(String str1,String str2){
if(str1.length()>str2.length()){
for(int i=0;i<str2.length();i++){
if(str1.charAt(i)!=str2.charAt(i)) return "";
}
return h(str1.substring(str2.length()),str2);
}else if(str1.length()<str2.length()){
return h(str2,str1);
}else{
return str1.equals(str2)?str1:"";
}
}
}