入门力扣自学笔记150 C++ (题目编号670)
670. 最大交换
题目:
给定一个非负整数,你至多可以交换一次数字中的任意两位。返回你能得到的最大值。
示例 1 :
输入: 2736
输出: 7236
解释: 交换数字2和数字7。
示例 2 :
输入: 9973
输出: 9973
解释: 不需要交换。
注意:
给定数字的范围是 [0, 108]
来源:力扣(LeetCode)
链接:https://leetcode.cn/problems/maximum-swap
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。
思路:
先将数字转换为字符串或者数据列表l1,从后往前遍历这个列表,讲列表数据从大到小排序存在另外一个列表l2中,(从后往前遍历的原因是如果输入为3772,结果肯定希望是7732而不是7372)两者正向遍历比较,列表逐一对比,直到l1中某一下标对应的元素小于l2的,将l1该位置的元素与l2中元素(l1后序遍历找到该元素在l1出现位置)互换即可。
代码:
class Solution {
public:int maximumSwap(int num) {string charArray = to_string(num);int n = charArray.size();int maxNum = num;for (int i = 0; i < n; i++) {for (int j = i + 1; j < n; j++) {swap(charArray[i], charArray[j]);maxNum = max(maxNum, stoi(charArray));swap(charArray[i], charArray[j]);}}return maxNum;}
};
入门力扣自学笔记150 C++ (题目编号670)相关推荐
- 入门力扣自学笔记118 C++ (题目编号1413)
1413. 逐步求和得到正数的最小值 题目: 给你一个整数数组 nums .你可以选定任意的 正数 startValue 作为初始值. 你需要从左到右遍历 nums 数组,并将 startValue ...
- 入门力扣自学笔记52 C++ (题目编号929)
929. 独特的电子邮件地址 题目: 每个 有效电子邮件地址 都由一个 本地名 和一个 域名 组成,以 '@' 符号分隔.除小写字母之外,电子邮件地址还可以含有一个或多个 '.' 或 '+' . 例如 ...
- 20210325:力扣递归,回溯类型题目合集
力扣递归,回溯类型题目合集 题目 思路与算法 代码实现 写在最后 题目 子集 2. 90. 子集 II 3. 40. 组合总和 II 4. 22. 括号生成 思路与算法 子集:注释的很详细,递归生成子 ...
- 力扣题目归类,顺序刷题不再难
目录 介绍 前奏-基础篇 中篇-链表.树的相关操作 进阶-回溯.动态规划 脑筋急转弯 介绍 大家好,相信很多人都知道刷力扣的重要性,但是如果不能将题目很好的归类整理专一练习,而是东做一道西做一道,那么 ...
- 力扣刷题记录-回溯算法相关题目
首先介绍一下回溯算法 回溯通常在递归函数中体现,本质也是一种暴力的搜索方法,但可以解决一些用for循环暴力解决不了的问题,其应用有: 1.组合问题: 例:1 2 3 4这些数中找出组合为2的组合,有1 ...
- 力扣数据库题目刷题日记
一个准备秋招的菜鸟 此前已经在力扣上面刷过一些题目,从今天开始记录刷题 1. Day1 96/97题 难度:中等 解题思路 首先需要读懂题目的意思,必须要保证容量大于相同分数的人数的同时,选择最低的分 ...
- 教你创建电脑、手机同步的markdown云笔记--力扣刷题力荐!
开篇先致歉 其他不谈,开篇必须先给各位读者道个歉,年后工作上比较忙,加上最近闲暇的时间都用来在力扣上刷算法题了,导致公众号断更有些严重啊.再加上年后将健身减重提上了日程,时间上就更显的捉襟见肘了. 不 ...
- 力扣- -正则表达式匹配
力扣- -正则表达式匹配 文章目录 力扣- -正则表达式匹配 一.题目描述 二.分析 方法一:Dp函数 明确状态和选择 确定状态转译方程 确定base case 完整代码 方法二:Dp table 明 ...
- 力扣--- 滑动谜题
力扣- 滑动谜题 文章目录 力扣--- 滑动谜题 一.题目描述 二.问题分析 三.代码 一.题目描述 二.问题分析 对于这种计算 最小步数的问题,我们就要敏感地想到 BFS 算法. 这个题目转化成 B ...
最新文章
- 基于OpenLayers+rbush实现高德轨迹样式
- 分布式系统理论之两阶段提交协议
- linux正则表达式BRE
- python 元组 字典 列表 序列化与反序列化
- 深入理解 C 指针阅读笔记 -- 第二章
- java list 拼接 字符串数组_把数组所有元素排序,并按照“参数=参数值”的模式用“”字符拼接成字符串...
- C++: byte和int的相互转化
- [LA3026]Period
- linux中一条命令将文件转换为UTF-8格式-解决乱码
- createsolidcaret 后 很快就不闪烁了_【文献推送】Adv. Mater. | 单分散硅基闪烁体实现X射线介导的深层肿瘤光动力治疗...
- 最新CleanMyMac支持MacOS 12.x
- C#调用新浪微博API生成RSS资源文件
- 10的负2次方用计算机怎么算,2的负二次方等于多少(进制转换计算器)
- vss服务器状态失败_VSS错误自动修复
- matlab锥圆球体_MATLAB锥齿轮设计
- 杂记十四:DataFactory使用教程
- CDN是什么?与DNS有什么关系?及其原理
- wim工具扫描linux磁盘,[V1.30.2011.501版]WimTool -- Wim文件的图形视窗处理工具[无忧首发]...
- 炫舞滑板机器人_教程丨自制鬼畜滑板机器人,用纸壳就能做
- 在linux系统上怎么架设服务器吗,Linux下各种服务器的架设详解
热门文章
- Discuz!教程之修改帖子下方“来自: XX手机客户端”的链接地址
- 【English学习】6个老外最常用的口语表达
- datatype未定义是什么意思_vue里面的methods写了方法,为什么渲染的时候还是报未定义...
- 全球计算机专业排名2015年,2015年US News美国大学计算机专业 Computer Science排名?...
- 扎克曼的《信息系统架构框架》
- win安装MPE环境遇到的问题
- 腾讯云CentOS如何使用root用户远程登录实例
- picasa 整理照片_使用AddToPicasa将照片快速保存到您的Picasa网络相册中
- python编程括号怎么打_在python中打印有效的括号组合
- 企业常用的服务器的型号,企业中最常用的服务器是