题目: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.empty()){
return "";
}
for (int i=0;i<strs[0].length();i++){
for (int j=1;j<strs.size();j++){
if (strs[j][i]!=strs[0][i]){
return strs[0].substr(0,i);
}
}
}
return strs[0];
}
};