zoukankan      html  css  js  c++  java
  • [LeetCode] Compare Version Numbers

    Question:

    Compare two version numbers version1 and version2.
    If version1 > version2 return 1, if version1 < version2 return -1, otherwise return 0.

    You may assume that the version strings are non-empty and contain only digits and the . character.
    The . character does not represent a decimal point and is used to separate number sequences.
    For instance, 2.5 is not "two and a half" or "half way to version three", it is the fifth second-level revision of the second first-level revision.

    Here is an example of version numbers ordering:

    0.1 < 1.1 < 1.2 < 13.37

    1、题型分类:

    2、思路:

    3、时间复杂度:

    4、代码:

    public class Solution {
        public int compareVersion(String version1, String version2) {
                    String[] v1=version1.split("\.");
            String[] v2=version2.split("\.");
            int x=Math.max(v1.length, v2.length);
            int [] i1=convertStringArrayToIntegerArray(v1,x);
            int [] i2=convertStringArrayToIntegerArray(v2,x);
            for(int i=0;i<x;i++)
            {
                if(i1[i]>i2[i])
                    return 1;
                else if(i1[i]<i2[i])
                    return -1;
            }
            return 0;
        }
            public int[] convertStringArrayToIntegerArray(String[] str,int l)
        {
            int len=str.length;
            int [] r=new int[l];
            for(int i=0;i<len;i++)
            {
                r[i]=Integer.parseInt(str[i]);
            }
            return r;
        }
    }

    5、优化:

    6、扩展:

  • 相关阅读:
    走近Qt
    C: 数组形参
    C++: 单例模式和缺陷
    c++: 获取delete[]中的数组大小
    像素格式
    BMP图像格式
    Sublime Text 格式化JSON-pretty json
    Sublime Text3配置SublimeREPL快捷键的方法(Python)
    Sublime Text3安装SublimeREPL插件以及快捷键设置
    Sublime Text3 注册码激活码(持续更新中2018-11-20)
  • 原文地址:https://www.cnblogs.com/maydow/p/4644086.html
Copyright © 2011-2022 走看看