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;
	}
};
相关推荐
郝学胜_神的一滴9 分钟前
C++11 工程级应用 11:编译期黑魔法,告别重复烂代码
c++·visual studio
zyeyeye30 分钟前
C++入门:从HelloWorld到命名空间揭秘
c语言·开发语言·c++·算法
励志不掉头发的内向程序员34 分钟前
【LibreCAD 2D架构】从 addHistory 到 RS_UndoCycle:LibreCAD 里的两套 History 与撤销机制
开发语言·c++·qt·学习·系统架构
elseif1231 小时前
【双指针/二分】P1102 A-B 数对
c++·算法·二分·双指针
雪落漂泊1 小时前
C++智能指针
开发语言·jvm·c++
bnmoel1 小时前
C++ 基础入门篇(二):引用
开发语言·c++·引用·底层
richard_yuu2 小时前
AOI 实战第六篇:.onnx 到 C++ 的最后一公里
c++·深度学习·yolo
wuminyu2 小时前
Kafka配置TLS/SSL加密传输时零拷贝失效分析
java·linux·c语言·jvm·c++
影视飓风TIM2 小时前
C++ 智能指针:auto_ptr / unique_ptr / shared_ptr / weak_ptr 原理与使用
开发语言·c++
一木 之林2 小时前
李沐《动手学深度学习》知识卡合集:从 Softmax 回归到房价实战(第24-50集)
开发语言·c++·人工智能