开始cpp刷题之旅,多学多练,尽力而为。
先易后难,先刷简单的。
编写一个函数来查找字符串数组中的最长公共前缀。
如果不存在公共前缀,返回空字符串 “”。
示例 1:
输入:strs = [“flower”,“flow”,“flight”]
输出:“fl”
示例 2:
输入:strs = [“dog”,“racecar”,“car”]
输出:“”
解释:输入不存在公共前缀。
个人感觉这种比较好理解。
以第一个字符串作为标准。
遍历第一个字符串,从头到尾取出每一个字符,将该字符与剩下的所有字符串中的该位置字符进行比较判断。
当某个字符出现不同时或者该字符索引大于某个字符串长度时,结束遍历。
class Solution {
public:
string longestCommonPrefix(vector<string>& strs) {
string temp= strs[0];
for(int i=0;i<temp.length();i++){
for(int j=1; j<strs.size();j++){
if(i>strs[j].length()||temp[i]!= strs[j][i]){
return temp.substr(0,i);
};
};
};
return temp;
}
};
OK,到此结束,工作再忙,但也要坚持每天一题。