题目地址:
https://leetcode.com/problems/longest-common-prefix/
给定一个字符串数组 A A A,求其最长公共前缀。
可以从空串开始尽量取得最长的公共前缀。代码如下:
class Solution {
public:
string longestCommonPrefix(vector<string>& ss) {
string res;
for (int i = 0;; i++) {
if (i > ss[0].size()) return res;
char ch = ss[0][i];
for (auto& s : ss)
if (s.size() <= i || s[i] != ch) return res;
res += ch;
}
return res;
}
};
时间复杂度 O ( n m ) O(nm) O(nm), m m m为字符串最长长度。空间 O ( 1 ) O(1) O(1)。