14. Longest Common Prefix 간단한 질문이지만 코드를 줄이기 위한 팁
2717 단어 shua
class Solution {
public:
string longestCommonPrefix(vector& strs) {
string res;
int h = strs.size();
if(h == 0) return res;
if(h == 1) return strs[0];
int i;
for(i = 0; i < strs[0].size() ; i++){
char first;
bool flag = false;
first = strs[0][i];//(i > 0 && strs[i][idx] != strs[i-1][idx])
for(int r = 1; r < h; r++){
if(i >= strs[0].size() || strs[r][i] != first){// ,
flag = true;
break;
}
}
if(flag) break;
else res.push_back(strs[0][i]);
}
return res;
}
};
간소화된 코드가 이렇게 짧고 간단할 수 있다니!다음과 같습니다.class Solution {
public:
string longestCommonPrefix(vector<string>& strs) {
string prefix = "";
for(int idx=0; strs.size()>0; prefix+=strs[0][idx], idx++)
for(int i=0; iif(idx >= strs[i].size() ||(i > 0 && strs[i][idx] != strs[i-1][idx]))
return prefix;
return prefix;
}
};