C语言 | Leetcode C语言题解之第165题比较版本号

题目:

题解:

cpp 复制代码
int compareVersion(char * version1, char * version2){
    int len1 = strlen(version1);
    int len2 = strlen(version2);
    int i = 0;
    int j = 0;
    while (i < len1 || j < len2) {
        int num1 = 0;
        int num2 = 0;
        while (i < len1 && version1[i] != '.') {
            num1 = num1 * 10 + (version1[i++] - '0');
        }
        while (j < len2 && version2[j] != '.') {
            num2 = num2 * 10 + (version2[j++] - '0');
        }
        if (num1 < num2) {
            return -1;
        } else if (num1 > num2) {
            return 1;
        }
        i++;
        j++;
    }
    return 0;
}
相关推荐
什巳12 分钟前
JAVA练习309- 二叉树的层序遍历
java·数据结构·算法·leetcode
麻瓜老宋2 小时前
AI开发C语言应用按步走,表达式计算器calc的第一步,中缀表达式词法分析
c语言·开发语言·atomcode
什巳3 小时前
JAVA练习306- 翻转二叉树
java·数据结构·算法·leetcode
一个初入编程的小白3 小时前
C语言:函数栈帧与销毁
c语言·开发语言
smj2302_796826523 小时前
解决leetcode第3989题网格中保持一致的最大列数
python·算法·leetcode
ComputerInBook5 小时前
c 和 c++ 中的宏块(macro)
c语言·c++··宏块·宏指令
bu_shuo6 小时前
c与cpp中的argc和argv
c语言·c++·算法
Aurorar0rua7 小时前
CS50 x 2024 Notes Algorithms - 02
c语言·开发语言·学习方法
CoderYanger7 小时前
A.每日一题:3020. 子集中元素的最大数量
java·程序人生·算法·leetcode·面试·职场和发展·学习方法
足球中国7 小时前
nuget把缓存搬离C盘
c语言·windows·缓存