Compare Version Numbers
来源:互联网 发布:用mac可以玩的游戏 编辑:程序博客网 时间:2024/06/07 07:15
class Solution {public: int compareVersion(string version1, string version2) { string::iterator iter1, iter2, iter3; iter1 = version1.begin(); while(iter1 != version1.end() && *iter1 != '.') iter1++; if(iter1 == version1.end()) version1 += ".0"; iter1 = version2.begin(); while(iter1 != version2.end() && *iter1 != '.') iter1++; if(iter1 == version2.end()) version2 += ".0"; cout<< "first dot" << endl; cout << version1 << endl; cout << version2 << endl; iter1 = version1.begin(); int counter = 0; for(; iter1 != version1.end(); iter1++) if(*iter1 == '.') counter++; if(counter < 2) version1 += ".0"; iter1 = version2.begin(); counter = 0; for(; iter1 != version2.end(); iter1++) if(*iter1 == '.') counter++; if(counter < 2) version2 += ".0"; cout<< "second dot" << endl; cout << version1 << endl; cout << version2 << endl; iter1 = version1.begin(); counter = 0; for(; iter1 != version1.end(); iter1++) if(*iter1 == '.') counter++; if(counter < 3) version1 += ".0"; iter1 = version2.begin(); counter = 0; for(; iter1 != version2.end(); iter1++) if(*iter1 == '.') counter++; if(counter < 3) version2 += ".0"; cout<< "third dot" << endl; cout << version1 << endl; cout << version2 << endl; int version1ForwardInt,version1BackwardInt,version1BBackwardInt, version1BBBackwardInt; iter1 = version1.begin(); while(*iter1 != '.') iter1++; iter2 = iter1; iter2++; while(*iter2 != '.') iter2++; iter3 = iter2; iter3++; while(*iter3 != '.') iter3++; version1ForwardInt = stoi(string(version1.begin(), iter1)); version1BackwardInt = stoi(string(iter1 + 1, iter2)); version1BBackwardInt = stoi(string(iter2 + 1, iter3)); version1BBBackwardInt = stoi(string(iter3 + 1, version1.end())); cout << version1ForwardInt << endl; cout << version1BackwardInt << endl; cout << version1BBackwardInt << endl; cout << version1BBBackwardInt << endl; int version2ForwardInt,version2BackwardInt,version2BBackwardInt, version2BBBackwardInt; iter1 = version2.begin(); while(*iter1 != '.') iter1++; iter2 = iter1; iter2++; while(*iter2 != '.') iter2++; iter3 = iter2; iter3++; while(*iter3 != '.') iter3++; version2ForwardInt = stoi(string(version2.begin(), iter1)); version2BackwardInt = stoi(string(iter1 + 1, iter2)); version2BBackwardInt = stoi(string(iter2 + 1, iter3)); version2BBBackwardInt = stoi(string(iter3 + 1, version2.end())); cout << version2ForwardInt << endl; cout << version2BackwardInt << endl; cout << version2BBackwardInt << endl; cout << version2BBBackwardInt << endl; if(version1ForwardInt > version2ForwardInt) return 1; if(version1ForwardInt < version2ForwardInt) return -1; if(version1ForwardInt == version2ForwardInt) { if(version1BackwardInt > version2BackwardInt) return 1; if(version1BackwardInt < version2BackwardInt) return -1; if(version1BackwardInt == version2BackwardInt) { if(version1BBackwardInt > version2BBackwardInt) return 1; if(version1BBackwardInt < version2BBackwardInt) return -1; if(version1BBackwardInt == version2BBackwardInt) { if(version1BBBackwardInt > version2BBBackwardInt) return 1; if(version1BBBackwardInt < version2BBBackwardInt) return -1; return 0; } } } //return 0; }};
0 0
- Leetcode Compare Version Numbers
- Compare Version Numbers
- [leetcode] Compare Version Numbers
- Compare Version Numbers
- Compare Version Numbers
- [leetcode] Compare Version Numbers
- Compare Version Numbers
- Leetcode: Compare Version Numbers
- 【Leetcode】:Compare Version Numbers
- Compare Version Numbers (Java)
- 165 Compare Version Numbers
- leetcode:Compare Version Numbers
- [LeetCode]Compare Version Numbers
- [leetCode] Compare Version Numbers
- [leetcode] Compare Version Numbers
- 【Leetcode】Compare Version Numbers
- [LeetCode] Compare Version Numbers
- Compare Version Numbers----easy
- C#泛型-泛型集合Dictionary
- div absolute 置中
- JAVA实验第二天
- oracle 中BETWEEN命令
- Eclipse设置编译文件.class输出路径
- Compare Version Numbers
- 文章标题
- 黑马程序员——用函数实现两变量值交换
- 《算法导论》 - 第6章 - 堆排序 - 习题解答
- C# 中的委托和事件
- URL设计规范
- final修饰的变量是引用不能改变还是引用的对象不能改变
- linux程序设计——第一个线程程序(第十二章)
- Codeforces Round #311 (Div. 2)判环+Trie 好