165. 比较版本号

165. 比较版本号


题目链接:165. 比较版本号

代码如下:

cpp 复制代码
class Solution {
public:
	int compareVersion(string version1, string version2) {
		vector<string> v1 = split(version1, '.');
		vector<string> v2 = split(version2, '.');
		int n = v1.size(), m = v2.size();
		for (int i = 0;i < n || i < m;i++) {
			int ver1 = i < n ? stoi(v1[i]) : 0;
			int ver2 = i < m ? stoi(v2[i]) : 0;
			if (ver1 != ver2) {
				return ver1 < ver2 ? -1 : 1;
			}
		}
		return 0;
	}
private:
	vector<string> split(const string& s, char delim) {
		vector<string> res;
		stringstream ss(s);
		string token;
		while (getline(ss, token, delim)) {
			res.emplace_back(token);
		}
		return res;
	}
};
相关推荐
Rabitebla1 分钟前
C++ 和 C 语言实现 Stack 对比
c语言·数据结构·c++·算法·排序算法
旖-旎3 分钟前
递归(汉诺塔问题)(1)
c++·学习·算法·leetcode·深度优先·递归
深邃-4 分钟前
【数据结构与算法】-顺序表链表经典算法
java·c语言·数据结构·c++·算法·链表·html5
努力学习的小廉5 分钟前
我爱学算法之—— 前缀和(上)
c++·算法
文祐5 分钟前
C++类之虚函数表和虚基类表及其内存布局(一个子类虚继承一个父类)
开发语言·c++
是娇娇公主~23 分钟前
C++11 移动语义全面详解
c++·移动语义
努力努力再努力wz29 分钟前
【MySQL入门系列】掌握表数据的 CRUD:DML 核心语法与执行逻辑解析
android·开发语言·数据结构·数据库·c++·b树·mysql
漂流瓶jz30 分钟前
UVA-120 煎饼 题解答案代码 算法竞赛入门经典第二版
数据结构·c++·算法·排序·aoapc·算法竞赛入门经典·uva
xiaoye-duck1 小时前
【C++:异常】C++ 异常讲解指南:从理论到实践,深入理解栈展开和优雅处理程序错误
开发语言·c++·异常