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;
}
相关推荐
千金裘换酒7 小时前
LeetCode 移动零元素 快慢指针
算法·leetcode·职场和发展
iuu_star8 小时前
C语言数据结构-顺序查找、折半查找
c语言·数据结构·算法
漫随流水8 小时前
leetcode算法(515.在每个树行中找最大值)
数据结构·算法·leetcode·二叉树
千金裘换酒10 小时前
LeetCode反转链表
算法·leetcode·链表
JoyCheung-11 小时前
Free底层是怎么释放内存的
linux·c语言
圣保罗的大教堂12 小时前
leetcode 1161. 最大层内元素和 中等
leetcode
闲看云起12 小时前
LeetCode-day6:接雨水
算法·leetcode·职场和发展
黛色正浓12 小时前
leetCode-热题100-贪心合集(JavaScript)
javascript·算法·leetcode
一起努力啊~13 小时前
算法刷题--长度最小的子数组
开发语言·数据结构·算法·leetcode