思路:
1.将两个版本中的小数点全部去掉
2.将字符串类型转换为整型
3.比较两个数大小
代码:
class Solution {
public:
int compareVersion(string version1, string version2) {
int i=0,j=0;
while(i<version1.size() || j<version2.size()) //指针不为空
{
int x=i,y=j;
while(x<version1.size() && version1[x] !='.') x++;
while(y<version2.size() && version2[y] !='.') y++; //去除小数点
// atoi 函数原型:int atoi(char*str) 将字符串转化成一个整数型,
// substr 函数原型:s.substr(pos,n)
int a=i==x? 0: atoi(version1.substr(i,x-i).c_str());
int b=j==y? 0: atoi(version2.substr(j,y-j).c_str());
if(a>b) return 1;
if(a<b) return -1;
i=x+1;
j=y+1;
}
return 0;
}
};
Every step of barefoot running deserves to be recorded