Write a function to find the longest common prefix string amongst an array of strings.
比较简单,直接上代码。
java代码
public class Solution {
public String longestCommonPrefix(String[] strs) {
if(strs==null || strs.length==0){
return "";
}
if(strs.length == 1){
return strs[0];
}
int minLength = strs[0].length();
int minStrIndex = 0;
int i;
for(i=1;i<strs.length;i++){
if(strs[i].length()<minLength){
minStrIndex=i;
minLength=strs[i].length();
}
}
for(i=0;i<strs[minStrIndex].length();i++){
for(int j=0;j<strs.length;j++){
if(strs[minStrIndex].charAt(i)!=strs[j].charAt(i)){
return strs[minStrIndex].substring(0,i);
}
}
}
//
return strs[minStrIndex];
}
}
go代码
func longestCommonPrefix(strs []string) string {
if strs==nil||len(strs)==0{
return ""
}
if len(strs)==1{
return strs[0]
}
var index int = 0
var minLength int = len(strs[0])
var i , j int
for i=1;i<len(strs);i++{
if len(strs[i]) < minLength{
index=i
minLength=len(strs[i])
}
}
for i=0;i<len(strs[index]);i++{
for j=0;j<len(strs);j++{
if strs[index][i]!=strs[j][i]{
return strs[index][0:i]
}
}
}
return strs[index]
}