题目描述:
编写一个函数来查找字符串数组中的最长公共前缀。
如果不存在公共前缀,返回空字符串 ""
。
解题思路:
没有卡太长时间,因为String类的indexOf方法查找时返回的就是0;
直接上代码
class Solution {
public String longestCommonPrefix(String[] strs) {
String returnValue = "";
int aLength = strs.length;
if(0 == aLength){
return returnValue;
}
if(1 == aLength){
return strs[0];
}
StringBuilder targetPrefixs = new StringBuilder();
char[] prefixArray = strs[0].toCharArray();
int aPrefixArraylength = prefixArray.length;
String sPrefix = "";
String sTargetPrefix;
int iIndex;
for(int i = 0; i < aPrefixArraylength; i++){
targetPrefixs.append(prefixArray[i]);
sTargetPrefix = targetPrefixs.toString();
iIndex = 0;
for(int j = 0; j < aLength; j++){
iIndex = strs[j].indexOf(sTargetPrefix);
if(iIndex != 0){
break;
}
}
if(iIndex == 0){
sPrefix = sTargetPrefix;
}
if(iIndex != 0){
return sPrefix;
}
}
return sPrefix;
}
}