LeetCode14.最长公共前缀
Question
编写一个函数来查找字符串数组中的最长公共前缀。
如果不存在公共前缀,返回空字符串
""
。
Example
Example 1:
输入:strs = ["flower","flow","flight"]
输出:"fl"
Example 2:
输入:strs = ["dog","racecar","car"]
输出:""
解释:输入不存在公共前缀。
Idea
1 <= strs.length <= 200
0 <= strs[i].length <= 200
strs[i]
仅由小写英文字母组成
相关标签
Solution1:自我尝试
//可以先求最小字符串长度优化时间复杂度O(min(m)n)
class Solution {
public:
string longestCommonPrefix(vector<string>& strs) {
int n = strs.size();
string result;
for(int j = 0; j < strs[0].size(); j++){
result.push_back(strs[0][j]);
for(int k = 1; k < n; k++){
if(!strs[k][j] || strs[k][j] != result[j]){
result.pop_back();
return result;
}
}
}
return result;
}
};