zoukankan      html  css  js  c++  java
  • Compare Version Numbers

    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

    Runtime: 0ms

     1 class Solution {
     2 public:
     3     int compareVersion(string version1, string version2) {
     4         int m = version1.size(), n = version2.size();
     5         int i = 0, j = 0;
     6         
     7         while(i < m || j < n){
     8             int temp1 = 0, temp2 = 0;
     9             while(i < m && version1[i] != '.'){
    10                 temp1 = temp1 * 10 + version1[i] - '0';
    11                 i++;
    12             }
    13             while(j < n && version2[j] != '.'){
    14                 temp2 = temp2 * 10 + version2[j] - '0';
    15                 j++;
    16             }
    17             if(temp1 > temp2) return 1;
    18             if(temp1 < temp2) return -1;
    19             i++;
    20             j++;
    21         }
    22         return 0;
    23     }
    24 };
  • 相关阅读:
    枚举代码(待更新)
    数据类型
    char
    opencv中读写视频
    数据获取与存储
    Mat 与 IplImage 和 CvMat 的转换
    Mat类的输出格式
    Mat 类的内存管理
    Mat_类
    Mat表达式
  • 原文地址:https://www.cnblogs.com/amazingzoe/p/4860173.html
Copyright © 2011-2022 走看看