Write a function to find the longest common prefix string amongst an array of strings.
class Solution {
public:
string longestCommonPrefix(vector<string> &strs) {
if(strs.size()==0)
{
return "";
}
if(strs.size()==1)
{
return strs[0];
}
string strTemp=strs[0];
string s1=strTemp,s2;
string strCommon;
int i;
vector<string>::iterator iter=strs.begin();
++iter;
for(;iter!=strs.end();++iter)
{
s2=*iter;
int n=min(s1.length(),s2.length());
for(i=1;i<=n;)
{
if(s1.substr(0,i)==s2.substr(0,i))
{
++i;
}
else
{
break;
}
}
strCommon=s1.substr(0,i-1);
if(strCommon.empty())
{
return strCommon;
}
s1=strCommon;
}
return strCommon;
}
};