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;
}
相关推荐
luj_17681 小时前
星火科技助力边远地区防病攻坚
c语言·开发语言·c++·经验分享·算法
画面无声1 小时前
STM32的SPI通信原理与练习记录
c语言·stm32·单片机·嵌入式硬件·学习
weixin_456808382 小时前
【沁恒蓝牙开发】IAP升级流程
c语言·单片机·嵌入式硬件
geats人山人海4 小时前
数据结构第六章c语言 树的存储下二叉树的概念和存储
c语言·数据结构·算法
影视飓风TIM4 小时前
Linux下C语言缓冲区原理 + Git版本控制
linux·c语言·git
皓月斯语5 小时前
B2118 验证子串
c++·题解
冻柠檬飞冰走茶5 小时前
PTA基础编程题目集 7-31 字符串循环左移(C语言实现)
c语言·开发语言·数据结构·算法
Hi李耶5 小时前
【LeetCode】4-寻找两个正序数组的中位数
算法·leetcode·职场和发展
2301_777998346 小时前
C/C++:预处理详解
c语言·c++
Hi李耶9 小时前
【LeetCode】6-Z字形变换
算法·leetcode·职场和发展