LETCODE 165
来源:互联网 发布:淘宝权女友辣椒和静雯 编辑:程序博客网 时间:2024/04/28 07:36
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)可能会出现1.0 = 1
(2)可能会出现1.1.1.1.1即多个点。
思路:
从非‘ .’开始,逐个取出字符并转化为数字比较:
class Solution {public:int compareVersion(string version1, string version2) {int temp1, temp2;int pos1 = 0, pos2 = 0;while (pos1 < version1.length() || pos2 < version2.length()) {temp1 = 0; while (pos1 < version1.length()) {if (version1[pos1] == '.') {++pos1;break;}temp1 = temp1 * 10 + (version1[pos1] - '0');++pos1;}temp2 = 0; while (pos2 < version2.length()) {if (version2[pos2] == '.') {++pos2;break;}temp2 = temp2 * 10 + (version2[pos2] - '0');++pos2;}if (temp1 > temp2) return 1;if (temp1 < temp2) return -1;}return 0;}};
0 0
- LETCODE 165
- letcode 118
- letcode-TwoSum
- LetCode 412
- LetCode 371
- LetCode:Palindrome Partitioning II
- letcode Gray code
- [letcode 134] Gas Station
- letcode - Dungeon Game
- [letcode]Perfect Squares
- letcode remove-element
- Letcode 1.Two Sum
- Generate Parentheses--letcode
- Letcode 198 House Robber
- Letcode刷题心得
- letcode 9 Palindrome Number
- letcode 答案(Python)
- 【面试准备】letcode—LRU
- hdu2444(判断二分图)
- Hello World!
- leetcode:Odd Even Linked List 【Java】
- 杨辉三角
- #128. 【NOI2015】软件包管理器
- LETCODE 165
- YTU:C语言习题 n个数逆序
- 【Struts2进阶】用Struts2搭建web项目
- CUDA: 高效访问24位RGB图像
- 遗传算法中的转盘算法
- eclipse 编译python时控制台的中文输出时乱码
- MySQL按照汉字的拼音排序
- Android PM常用命令使用小记
- 2696: 航班安排|费用流