Compare Version Numbers
字符串比较的题,给定两个字符串,每个字符串都被若干个’.’分开,形成若干个整数,从头开始比较一个个整数,判断大小
代码如下
class Solution {
public:
int compareVersion(string version1, string version2) {
int idx1 = 0;
int idx2 = 0;
while(idx1 < version1.size() || idx2 < version2.size())
{
int num1 = 0;
int num2 = 0;
while(idx1 < version1.size() && version1[idx1] != '.')
num1 = num1 * 10 + (version1[idx1++] - '0');
while(idx2 < version2.size() && version2[idx2] != '.')
num2 = num2 * 10 + (version2[idx2++] - '0');
if(num1 > num2)
return 1;
else if(num1 < num2)
return -1;
++idx1;
++idx2;
}
return 0;
}
};
先存数再比较可能溢出,也可以用字符串比较的方法