Write a function to find the longest common prefix string amongst an array of strings.
思路:
1. 检查所有的string是否有相同的前缀,例如:”ab”,”abc”,”abcd”相同的前缀是”ab”。简单直接的方法就是:每个string先遍历第一个元素,再第二个,依次类推,比较是否所有的统一位置都相等,相等则添加到结果中。不等或某一个string的这个位置大于最大位置,则直接返回!
class Solution {
public:
string longestCommonPrefix(vector<string>& strs) {
//
string res="";
if(strs.empty()) return res;//后面用到strs[0],加保护!
int i=0;
while(i>=0){
if(i>=strs[0].size()) break;//需要保证strs[0]的存在,要加保护!
char cur=strs[0][i];
for(int j=1;j<strs.size();j++){
if(cur!=strs[j][i]) return res;
}
res+=cur;
i++;
}
return res;
}
};