题解 | NO.22#比较版本号#3.9
比较版本号
https://www.nowcoder.com/practice/2b317e02f14247a49ffdbdba315459e7
/**
* 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
*
* 比较版本号
* @param version1 string字符串
* @param version2 string字符串
* @return int整型
*/
#include <string.h>
int compare(char* version1, char* version2 ) {
//记录两字符串长度
int n1 = strlen(version1); //调用strlen函数要加头文件
int n2 = strlen(version2);
int i = 0, j = 0;
while(i < n1 || j < n2){ //两个都读完才结束循环
long long num1 = 0;
while(version1[i] != '.' && i < n1){ //别忘了i<n1,最后一个修订号后没有点
num1 = 10 * num1 + (version1[i] - '0'); //注意是num1*10,而不是后边的
i++;
}
long long num2 = 0;
while(version2[j] != '.' && j < n2){
num2 = 10 * num2 + (version2[j] - '0');
j++;
}
if(num1 > num2)
return 1;
else if(num1 < num2)
return -1;
else{
i++;
j++;
}
}
return 0;
}
SHEIN希音公司福利 350人发布
查看15道真题和解析