题目
编写一个函数来查找字符串数组中的最长公共前缀。
如果不存在公共前缀,返回空字符串 “”。
示例 1:
输入: ["flower","flow","flight"]
输出: "fl"
示例 2:
输入: ["dog","racecar","car"]
输出: ""
解释: 输入不存在公共前缀。
说明:
所有输入只包含小写字母 a-z 。
代码
public string LongestCommonPrefix(string[] strs) {
if(strs.Length==0)
{
return "";
}
if(strs.Length==1)
{
return strs[0];
}
List<char> list=new List<char>();
int minLength=strs[0].Length,j;
char c;
for(int i=1;i<strs.Length;i++)
{
if(strs[i].Length<minLength)
{
minLength=strs[i].Length;
}
}
for(int i=0;i<minLength;i++)
{
c=strs[0][i];
for(j=1;j<strs.Length;j++)
{
if(strs[j][i]!=c)
{
break;
}
}
if(j>=strs.Length)
{
list.Add(c);
}
else
{
break;
}
}
return new String(list.ToArray());
}