描述
给你一个大小为 n 的字符串数组 strs ,其中包含n个字符串 , 编写一个函数来查找字符串数组中的最长公共前缀,返回这个公共前缀。
数据范围:0≤n≤5000,0≤len(strsi)≤50000 \le len(strs_i) \le 50000≤len(strsi)≤5000
进阶:空间复杂度 O(n),时间复杂度 O(n)
示例1
输入:[“abca”,“abc”,“abca”,“abc”,“abcc”]
返回值:“abc”
示例2
输入:[“abc”]
返回值:“abc”
代码
class Solution {
public:
/**
*
* @param strs string字符串vector
* @return string字符串
*/
string longestCommonPrefix(vector<string>& strs) {
// write code here
if(strs.size()==1)
return strs[0];
if(strs.size()==0)
return "";
string str="";
for(int i=0;i<strs[0].size();i++){
int j;
for(j=0;j<strs.size()-1;j++){
if(strs[j][i]!=strs[j+1][i]){
break;
}
}
if(j==strs.size()-1){
str+=strs[j][i];
}else
break;
}
return str;
}
};