【leetcode】9 longest common prefix
数组字符串的最长公共前缀
注意事项:
1 抓住前缀这一点,区别最长公共子串
2 取基准pivot---第一个子串,依次与剩下字符串比较
3 比较方法:获取两字符串中最短长度n,比较(0,n),从n开始比较,不相等即n--;
更新pivot长度(0,n)
class Solution {
public:
string longestCommonPrefix(vector<string>& strs) {
if(strs.size()==0)
return "";
string pivot=*strs.begin();
vector<string>::iterator it=strs.begin();//注意iterator语法
int n=0;
for(it=it+1;it!=strs.end();it++){
n=pivot.size()>(*it).size()?(*it).size():pivot.size();//注意size语法
while(pivot.compare(0,n,*it,0,n)!=0){
n--;
}
pivot=pivot.substr(0,n);
}
return pivot;
}
};