leetcode:Next Permutation + Lon…
来源:互联网 发布:睡了兄弟的女朋友知乎 编辑:程序博客网 时间:2024/05/16 11:53
Next Permutation:
题意是,给定一个字符串,如4123,求出在字典序排列组合下大于它的下一个字符串,上例的答案是4132,4312虽然也大于,但在排列组合中不是紧邻4123的,因此不行。
思路是升序降序
从后往前找,如果一直是升序,说明这个字符串就是字典序下最大的了,没有更大的,按照题目要求,就返回字符序最小的,如输入4321(最大字典序),那么返回1234。
如果遍历过程中,找到第一个非递增的i,num[i]再把i位置后面的字符串倒置,就能得到刚好大于原字符串的最小字符串,这样的原理是:
假如有字符串cedba,a
Longest Valid Parentheses:
这个是之前括号匹配问题的扩展,给定一个括号字符串如"(()()))(",求出它最长的有效子串。
思路还是用栈,左括号入栈,重点是在处理右括号。
1、如果检测到右括号时栈为空,那么直接检查下一个元素,并把start位移到下一个元素。
2、如果栈刚好有一个元素,那么说明从start到该位置所有括号匹配完毕,检查这个长度是否大于当前最长值。
3、如果栈有不止一个元素,那么说明,从倒数第二个元素的下一个位置到当前位置,所有括号匹配完毕,也可以求得当前的最大匹配长度。
阅读全文
0 0
- leetcode:Next Permutation + Lon…
- next-permutation 用于数列,字…
- POJ 2774 Long Lon…
- leetcode:Remove Element + Imple…
- leetcode:Divide Two Integers + …
- leetcode:Shuffle an Array + Miss…
- leetcode:Integer to Roman + Fin…
- poj 2015 Permutation Code
- Permutation CodeForces 359B
- 集线器 交换机 路由器 网桥 …
- 使用BBED修改SCN …
- leetcode:Single Number123 …
- leetcode:Reconstruct Original D…
- leetcode:Multiply Strings +…
- leetcode:Permutations1+2 + Rotat…
- leetcode:Fraction to Recurring …
- leetcode:Linked List Random Node…
- leetcode:Bulb Switcher + K…
- leetcode:Remove Element + Imple…
- MATLAB使用备注(二)
- 在linux下挂载、更新与定制硬盘
- leetcode:Divide Two Integers + …
- LINUXmint18.2添加国内源以及安装各种流行软件(网易云音乐,搜狗,谷歌浏览器,virtualbox虚拟机)
- leetcode:Next Permutation + Lon…
- C#枚举所有串口COM
- 数据库的锁表和解锁操作
- leetcode:Fraction to Recurring …
- leetcode:Single Number123 …
- leetcode:Linked List Random Node…
- leetcode:Shuffle an Array + Miss…
- leetcode:Integer to Roman + Fin…
- finetune入门,如何用已有的caffem…