165. 比较版本号
题目链接:165. 比较版本号
代码如下:
cpp
class Solution {
public:
int compareVersion(string version1, string version2) {
vector<string> v1 = split(version1, '.');
vector<string> v2 = split(version2, '.');
int n = v1.size(), m = v2.size();
for (int i = 0;i < n || i < m;i++) {
int ver1 = i < n ? stoi(v1[i]) : 0;
int ver2 = i < m ? stoi(v2[i]) : 0;
if (ver1 != ver2) {
return ver1 < ver2 ? -1 : 1;
}
}
return 0;
}
private:
vector<string> split(const string& s, char delim) {
vector<string> res;
stringstream ss(s);
string token;
while (getline(ss, token, delim)) {
res.emplace_back(token);
}
return res;
}
};