题解 | #比较版本号#

比较版本号

http://www.nowcoder.com/practice/2b317e02f14247a49ffdbdba315459e7

int compare(char* version1, char* version2 ) {
    // write code here
    int index1=0,index2=0,n1=strlen(version1),n2=strlen(version2);
   // int len=n1>n2?n1:n2
    while(index1<n1||index2<n2){
        int num1=0,num2=0;
        while(version1[index1]!='.'&&index1<n1){
            if(index1<n1) 
            num1=num1*10+(version1[index1++]-'0');
        }
        while(version2[index2]!='.'&&index2<n2){
            //注意循环要对index2++
            num2=num2*10+(version2[index2++]-'0');
        }
        if(num1>num2) return 1;
        else if(num1<num2) return -1;
        index1++;
        index2++;
    }
    return 0;
}
全部评论

相关推荐

不愿透露姓名的神秘牛友
昨天 11:29
点赞 评论 收藏
分享
点赞 评论 收藏
分享
05-30 12:03
山西大学 C++
offer来了我跪着...:不是骗子,等到测评那一步就知道为啥这么高工资了
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务