165. 比较版本号

103 阅读1分钟

class Solution {
    public int compareVersion(String version1, String version2) {
        int i = 0, j = 0;
        while (i < version1.length() || j < version2.length()) {
            int x = i, y = j;
            while (x < version1.length() && version1.charAt(x) != '.') x++;
            while (y < version2.length() && version2.charAt(y) != '.') y++;
            //如果走到头了就默认是0还要继续进行比较
            int a = i == x ? 0 : Integer.parseInt(version1.substring(i, x));
            int b = j == y ? 0 : Integer.parseInt(version2.substring(j, y));
            if (a < b) return -1;
            if (a > b) return 1;
            
            i = x + 1;
            j = y + 1;
        }
        return 0;
    }
}