当前位置:网站首页>每日一题-LeetCode556-下一个更大元素III-字符串-双指针-next_permutation
每日一题-LeetCode556-下一个更大元素III-字符串-双指针-next_permutation
2022-07-04 20:23:00 【李烦烦搞快点】
Note:
先从后往前找,找到第一个变小的数,然后把他和后面 比他大的最小的一个数进行交换
再把换完之后他后面的所有位置reverse一遍,返回答案即可
代码如下:
class Solution {
public:
int nextGreaterElement(int n) {
string s = to_string(n);
int k = s.size() - 1;
while(k && s[k - 1] >= s[k]) k --;
if(!k) return -1;
int t = k;
while(t + 1 < s.size() && s[t + 1] > s[k - 1]) t ++;
swap(s[k - 1], s[t]);
reverse(s.begin() + k, s.end());
long long res = stoll(s);
if(res > INT_MAX) return -1;
return res;
}
};
边栏推荐
- NetWare r7000 Merlin system virtual memory creation failed, prompting that the USB disk reading and writing speed does not meet the requirements. Solution, is it necessary to create virtual memory??
- 伦敦银走势图分析的新方法
- 基于OpenCV haarcascades的对象检测
- 杰理之AD 系列 MIDI 功能说明【篇】
- redis事务
- 【微服务|SCG】Predicate的使用
- c语言函数形参自增自减情况分析
- Nmap scan
- Jekins initialization password not found or not found
- GVM use
猜你喜欢
Hwinfo hardware detection tool v7.26 green version
【服务器数据恢复】某品牌服务器存储raid5数据恢复案例
ApplicationContext 与 BeanFactory 区别(MS)
仿ps样式js网页涂鸦板插件
网络命名空间
Quelques suggestions pour la conception de l'interface
MySQL - database query - use of aggregate function, aggregate query, grouping query
杰理之增加进关机前把触摸模块关闭流程【篇】
The video sound of station B is very low - solution
render函数与虚拟dom
随机推荐
Google colab踩坑
记一次重复造轮子(Obsidian 插件设置说明汉化)
[Shenbo introduction] VI How to contact your favorite doctoral tutor
redis RDB AOF
Quelques suggestions pour la conception de l'interface
redis事务
Detailed explanation of multi-mode input event distribution mechanism
Day24:文件系统
测试员的算法面试题-找众数
render函数与虚拟dom
Remember to build wheels repeatedly at one time (the setting instructions of obsidian plug-in are translated into Chinese)
HWiNFO硬件检测工具v7.26绿色版
Idea case shortcut
Huawei ENSP simulator configures ACL access control list
多模输入事件分发机制详解
Idea restore default shortcut key
多模輸入事件分發機制詳解
接口設計時的一些建議
6月“墨力原创作者计划”获奖名单公布!邀您共话国产数据库
黄金k线图中的三角形有几种?