题目链接:
题目描述:
给出版本字符串,比较版本。
Here is an example of version numbers ordering:
0.1 < 1.1 < 1.2 < 13.37
题目分析:
在遇到点之前的字符串如果转换成int型能比较出大小直接返回,如果相等,那么比较下一个点字符之前的字符串。
代码:
class Solution {
public:
int compareVersion(string version1, string version2) {
int len1=version1.size();
int len2=version2.size();
int sum1;
int sum2;
int i=0,j=0;
while(i<len1 || j<len2){
sum1=0;
sum2=0;
while(i<len1 && version1[i]!='.'){
sum1+=(sum1*10+version1[i++]-'0');
}
while(j<len2 && version2[j]!='.'){
sum2+=(sum2*10+version2[j++]-'0');
}
if(sum1>sum2){
return 1;
}
else if(sum1<sum2){
return -1;
}
i++;
j++;
}
return 0;
}
};