Write a function to find the longest common prefix string amongst an array of strings.
Runtime Error Message: | Line 4: java.lang.ArrayIndexOutOfBoundsException: 0 |
Last executed input: | [] |
注意考虑空字符串数组。
package leetcode;
import java.util.Arrays;
public class LongestCommonPrefix {
public static String longestCommonPrefix(String[] strs) {
if (strs.length == 0){
return "";
}
String frontStr = strs[0];
for (int i = 1; i<strs.length; i++){
String ans = "";
String backStr = strs[i];
if (backStr.length() >= frontStr.length()){
for (int j = 0; j<frontStr.length(); j++){
//System.out.println(ans);
if (frontStr.toCharArray()[j] == backStr.toCharArray()[j]){
ans += frontStr.toCharArray()[j];
}else{
break;
}
}
}else{
for (int j = 0; j<backStr.length(); j++){
//System.out.println(ans);
if (frontStr.toCharArray()[j] == backStr.toCharArray()[j]){
ans += frontStr.toCharArray()[j];
}else{
break;
}
}
}
frontStr = ans;
}
return frontStr;
}
public static void main(String[] args) {
String[] strs = {"a","v","d"};
System.out.println(longestCommonPrefix(strs));
}
}