比较版本号

此题可采用双指针的的解法。

 public int compare (String version1, String version2) {
        // write code here
        int n1=version1.length(),n2=version2.length(),len1=0,len2=0;
        while (len1<n1&&len2<n2){
            int num1=0,num2=0;
            while (len1<n1&&version1.charAt(len1)!='.'){
                num1=num1*10+(version1.charAt(len1++)-'0');
            }
            while (len2<n2&&version2.charAt(len2)!='.'){
                num2=num2*10+(version2.charAt(len2++)-'0');
            }

            if (num1>num2){
                return 1;
            }else if(num2>num1){
                return -1;
            }
            len1++;
            len2++;
        }
        return 0;
    }


全部评论

相关推荐

点赞 收藏 评论
分享
牛客网
牛客企业服务