当前位置:网站首页>每日一题-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;
}
};
边栏推荐
- LeetCode+ 81 - 85 单调栈专题
- Explication détaillée du mécanisme de distribution des événements d'entrée multimodes
- Hwinfo hardware detection tool v7.26 green version
- Actual combat simulation │ JWT login authentication
- 网件r7000梅林系统5g不稳定 5g信号经常掉线解决方法
- redis布隆过滤器
- Embedded TC test case
- 【微服务|SCG】Predicate的使用
- Jmeter 之压测入门
- PS vertical English and digital text how to change direction (vertical display)
猜你喜欢
What are the functional modules of RFID warehouse management system solution
[observation] Lenovo: 3x (1+n) smart office solution, releasing the "multiplier effect" of office productivity
uniapp 富文本编辑器使用
网件r7000梅林系统虚拟内存创建失败,提示USB磁盘读写速度不满足要求解决办法,有需要创建虚拟内存吗??
Routing configuration and connectivity test of Huawei simulator ENSP
Foxit pdf editor v10.1.8 green version
华为ensp模拟器 配置ACL访问控制列表
偷窃他人漏洞报告变卖成副业,漏洞赏金平台出“内鬼”
CAD中能显示打印不显示
Jmeter 之压测入门
随机推荐
Jmeter 之压测入门
Google colab踩坑
acwing 3302. Expression evaluation
杰理之AD 系列 MIDI 功能说明【篇】
网件r7000梅林系统5g不稳定 5g信号经常掉线解决方法
Redis:Redis配置文件相关配置、Redis的持久化
福昕PDF编辑器v10.1.8绿色版
杰理之增加进关机前把触摸模块关闭流程【篇】
redis管道
数十亿公民信息遭泄漏!公有云上的数据安全还有“救”吗?
杰理之AD 系列 MIDI 功能说明【篇】
记一次重复造轮子(Obsidian 插件设置说明汉化)
接口设计时的一些建议
ApplicationContext 与 BeanFactory 区别(MS)
Nmap scan
扩展你的KUBECTL功能
Ten years' experience of byte test engineer directly hits the pain point of UI automation test
实战模拟│JWT 登录认证
render函数与虚拟dom
Pytorch---使用Pytorch实现LinkNet进行语义分割