leetcode670最大交换

给定一个非负整数,你至多可以交换一次数字中的任意两位。返回你能得到的最大值。

示例 1 :

输入: 2736

输出: 7236

解释: 交换数字2和数字7。

示例 2 :

输入: 9973

输出: 9973

解释: 不需要交换。

注意:

给定数字的范围是 [0, 108]

cpp 复制代码
int maximumSwap(int num) {
	string charArray = to_string(num);
	int max = num;
	int len = charArray.size();
	for (int i = 0; i < len; i++){
		for (int j = i+1; j < len; j++){
			swap(charArray[i], charArray[j]);
			max = max > stoi(charArray) ? max : stoi(charArray);
			//stoi()函数将字符串转换为整型或其他进制
			swap(charArray[i], charArray[j]);
			//由于需要比较最大的值,所以需要交换回去,继续比较
		}
	}
	return max;
}
相关推荐
范纹杉想快点毕业34 分钟前
嵌入式通信核心架构:从状态机、环形队列到多协议融合
linux·运维·c语言·算法·设计模式
智源研究院官方账号1 小时前
众智FlagOS 1.6发布,以统一架构推动AI硬件、软件技术生态创新发展
数据库·人工智能·算法·架构·编辑器·硬件工程·开源软件
开源之眼1 小时前
GitHub star和github Vue3 响应式选择指南:ref 与 reactive 加星该怎么用?
算法·github
苦藤新鸡1 小时前
6.三数之和
c语言·c++·算法·力扣
s09071362 小时前
连通域标记:从原理到数学公式全解析
图像处理·算法·fpga开发·连通域标记
@小码农2 小时前
6547网:202512 GESP认证 C++编程 一级真题题库(附答案)
java·c++·算法
自然语2 小时前
人工智能之数字生命-特征类升级20260106
人工智能·算法
菜鸟233号2 小时前
力扣343 整数拆分 java实现
java·数据结构·算法·leetcode
赫凯2 小时前
【强化学习】第五章 时序差分算法
算法