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;
	}
};
相关推荐
shylyly_1 小时前
C++中的类型转换
开发语言·c++·匿名对象·隐式类型转换·拷贝优化
jinyishu_1 小时前
哈希表原理与开放定址法C++实现
c++·哈希算法·散列表
小龙报2 小时前
【优选算法】1. 水果成蓝 2.找到字符串中所有字母的异位词
java·c语言·数据结构·数据库·c++·redis·算法
txzrxz3 小时前
数论:排列数、组合数、费马小定理、逆元、同余定理
c++·算法·数论·组合数·费马小定理·逆元·排列数
库克克4 小时前
【C++】STL 库
c++
星恒随风4 小时前
C++ 继承进阶:默认成员函数、多继承、虚继承与组合设计
开发语言·c++·笔记·学习
呜喵王阿尔萨斯5 小时前
C/C++ const -- 多义混乱
c语言·开发语言·c++
海清河晏1115 小时前
Qt实战:从零构建美化登录界面
开发语言·c++·qt
一只小灿灿5 小时前
C++ 各类特殊符号、运算符
开发语言·c++
乱七八糟的屋子5 小时前
Crow C++ 超轻量HTTP框架实战教程
c++·crow·c++后端·c++http框架·轻量web服务·c++接口开发·跨平台网络编程