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;
}
相关推荐
小辉同志4 分钟前
78. 子集
算法·leetcode·深度优先
笨笨饿32 分钟前
26_为什么工程上必须使用拉普拉斯变换
c语言·开发语言·人工智能·嵌入式硬件·机器学习·编辑器·概率论
初生牛犊不怕苦2 小时前
与AI一起学习《C专家编程》:数组与指针
c语言·学习·算法
小CC吃豆子2 小时前
C/C++中 int 的最大最小值
c语言·开发语言·c++
Demon--hx3 小时前
[LeetCode]100 链表-专题
算法·leetcode·链表
_深海凉_4 小时前
LeetCode热题100-LRU 缓存
算法·leetcode·缓存
liuyao_xianhui4 小时前
优选算法_岛屿的最大面积_floodfill算法_C++
java·开发语言·数据结构·c++·算法·leetcode·链表
co_wait5 小时前
【C语言】字符串处理函数
c语言·开发语言
激昂网络5 小时前
用CT001解读Type-C线材设计:为什么只有一个CC灯亮?
c语言·开发语言·嵌入式硬件