165. Compare Version Numbers
来源:互联网 发布:nike淘宝旗舰店真假 编辑:程序博客网 时间:2024/06/05 11:24
Problem
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
Solution
分析见注释
class Solution {public: //按照'.'将字符串分段,比较每一段的值 int compareVersion(string version1, string version2) { //记得变量初始化 int val1 = 0; int val2 = 0; int i1 = 0; int i2 = 0; while(i1 < version1.length() || i2 < version2.length()) { val1 = 0; //求version字符串中的数字的值 while(i1 < version1.length()) { //如果出现'.',则val的值已经求得,跳出while, if(version1[i1] == '.') { ++i1; break; } val1 = val1*10 + (version1[i1]-'0'); ++i1; } val2 = 0; while(i2 < version2.length()) { if(version2[i2] == '.') { ++i2; break; } val2 = val2*10 + (version2[i2]-'0'); ++i2; } if(val1>val2) return 1; if(val1< val2) return -1; } return 0; }};
0 0
- 165. Compare Version Numbers
- 165. Compare Version Numbers
- 165. Compare Version Numbers
- 165. Compare Version Numbers
- 165. Compare Version Numbers
- 165. Compare Version Numbers
- 165. Compare Version Numbers
- 165. Compare Version Numbers
- 165. Compare Version Numbers
- 165. Compare Version Numbers
- 165. Compare Version Numbers
- 165. Compare Version Numbers
- 165. Compare Version Numbers
- 165. Compare Version Numbers
- 165. Compare Version Numbers
- 165. Compare Version Numbers
- 165. Compare Version Numbers
- 165. Compare Version Numbers
- Linux操作系统安装MetaQ
- Swift学习笔记一:语言特性
- StringUtils用法+StringUtils详细介绍
- 第三届河南省acm省赛 BUYING FEED
- iOS百度地图-BMK标注&覆盖物
- 165. Compare Version Numbers
- Linux-15-启动vmware无法加载安装linux系统的故障解决(L003-29)
- 运行应用程序时使Windows系统不休眠
- 单例模式的实现方式
- 解决RHEL6 vncserver 启动 could not open default font 'fixed'错误.
- iOS开发遍历集合(NSArray,NSDictionary、NSSet)方法总结
- iOS、mac开源项目及库汇总
- 同一类型标识符(Uniform Type Identifier,UTI)
- Fragment中startActivityForResult与onActivityResult详细解决方案