Skip to content

Commit 312975a

Browse files
author
cpppy
authored
Create 165_Compare_Version_Numbers.cc
1 parent 9f23722 commit 312975a

1 file changed

Lines changed: 37 additions & 0 deletions

File tree

165_Compare_Version_Numbers.cc

Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
class Solution {
2+
public:
3+
int compareVersion(string version1, string version2) {
4+
vector<int> v1=transform(version1);
5+
vector<int> v2=transform(version2);
6+
int i=0,j=0;
7+
while(i<v1.size() || j<v2.size()){
8+
if(i>=v1.size()) v1.push_back(0);
9+
if(j>=v2.size()) v2.push_back(0);
10+
if(v1[i]>v2[j]) return 1;
11+
else if(v1[i]<v2[j]) return -1;
12+
else {
13+
i++;
14+
j++;
15+
}
16+
}
17+
return 0;
18+
19+
}
20+
21+
vector<int> transform(string str){
22+
vector<int> res;
23+
res.clear();
24+
int result=0;
25+
int i=0;
26+
for(i;i<=str.size();++i){
27+
if(str[i]=='.'||str[i]=='\0'){
28+
res.push_back(result);
29+
result=0;
30+
}
31+
else{
32+
result=result*10+(str[i]-'0');
33+
}
34+
}
35+
return res;
36+
}
37+
};

0 commit comments

Comments
 (0)