题解 | #比较版本号#

比较版本号

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

#include <vector>
class Solution {
public:
    /**
     * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
     *
     * 比较版本号
     * @param version1 string字符串 
     * @param version2 string字符串 
     * @return int整型
     */
    int compare(string version1, string version2) {
        // write code here
        // vector<vector<int>>v1;
        // vector<vector<int>>v2;
        // vector<int>path;
        // for(int i=0;i<version1.size();i++){
        //     if(version1[i]!='.'){
        //         path.push_back(version1[i]-'0');
        //     }else {
        //     v1.push_back(path);
        //     path.clear();
        //     }
        // }
        // for(int i=0;i<version2.size();i++){
        //     if(version2[i]!='.'){
        //         path.push_back(version2[i]-'0');
        //     }else {
        //     v2.push_back(path);
        //     path.clear();
        //     }
        // }
        int i=0;
        int j=0;
        while(i<version1.size()||j<version2.size()){
            long long num1=0;
            while(i<version1.size()&&version1[i]!='.'){
                num1=num1*10+version1[i]-'0';
                i++;
            }
            i++;
            long long num2=0;
            while(j<version2.size()&&version2[j]!='.'){
                num2=num2*10+version2[j]-'0';
                j++;
            }
            j++;
            if(num1>num2)return 1;
            else if(num1<num2)return -1;
        }
        return 0;

    }
};

很有意思,直接装成num了,比较大小

全部评论

相关推荐

03-24 21:23
已编辑
郑州大学 Java
点赞 评论 收藏
分享
RickieOne:还有一个面试,上来就笔试算法 1️⃣ 字符串分割不能用 split ,ab&&c,根据&&放到数组上 2️⃣a 到 z 的全部组合情况,包括 a...z 3️⃣多线程,同时打印 1-200 4️⃣sql 代码 考分组 聚合 平均结合 小厂也这样吗,然后就八股 再拷打项目
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务