Write a function to find the longest common prefix string amongst an array of strings.
If there is no common prefix, return an empty string ""
.
Example 1:
Input: ["flower","flow","flight"] Output: "fl"
Example 2:
Input: ["dog","racecar","car"] Output: "" Explanation: There is no common prefix among the input strings.
Note:
All given inputs are in lowercase letters a-z
.
这道题本身非常简单,输出最大的共有前缀。考虑Vector数组大小为0或1的时候的特殊情况。
其他情况与第一个串对比,不一致立刻返回子串
class Solution {
public:string longestCommonPrefix(vector<string>& strs) {
if(strs.size()==0)
return "";
if(strs.size()==1)
return strs[0];
for (int i=0;;i++)
{
for (int j=1;j<strs.size();j++)
{
if (strs[j][i]!=strs[0][i])
{
return strs[0].substr(0,i);
}
}
}
}
};