1 题目要求:
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
.
2 解决方法:
class Solution {
public:
string longestCommonPrefix(vector<string>& strs) {
if (strs.size() == 0) return "";
string ret;
for (int i = 0;i<strs[0].length(); i++) {
for (int j = 1;j<strs.size(); j++) {
if ((strs[j].length()<=i)||(strs[j][i]!=strs[0][i])) return ret;
}
ret.push_back(strs[0][i]);
}
return ret;
}
};
时间复杂度O(mn)
空间复杂度O(1)