题解 | #比较版本号#

比较版本号

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;
}
全部评论

相关推荐

沟头学院:无关比赛不要写,这样会显着你主次不分,比赛不要撒谎,有哪些就写那些,创新创业建议删除。技能特长可以适当夸大。
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务