Next Permutation
来源:互联网 发布:网络上赌博的托 编辑:程序博客网 时间:2024/06/08 05:48
class Solution {
public:
void nextPermutation(vector<int>& nums) {
int length = nums.size() - 1;
while( length > 0 )
{
if( nums[length - 1] < nums[length] )
break;
length --;
}
if( length == 0)
{
for( int i = 0, j = nums.size()-1; i < j; i++ ,j-- )
swap( nums[ i ], nums[ j ] );
return; //一定不要忘了。
}
int k = nums.size() - 1;
for( ; k >= length; k-- )
{
if( nums[ k ] > nums[ length - 1 ] )
break;
}
swap( nums[ k ], nums[ length - 1 ] );
sort(nums.begin() + length , nums.end());
}
};
public:
void nextPermutation(vector<int>& nums) {
int length = nums.size() - 1;
while( length > 0 )
{
if( nums[length - 1] < nums[length] )
break;
length --;
}
if( length == 0)
{
for( int i = 0, j = nums.size()-1; i < j; i++ ,j-- )
swap( nums[ i ], nums[ j ] );
return; //一定不要忘了。
}
int k = nums.size() - 1;
for( ; k >= length; k-- )
{
if( nums[ k ] > nums[ length - 1 ] )
break;
}
swap( nums[ k ], nums[ length - 1 ] );
sort(nums.begin() + length , nums.end());
}
};
0 0
- Next Permutation
- Next Permutation
- Next Permutation
- Next Permutation
- Next Permutation
- Next Permutation
- Next Permutation
- Next Permutation
- Next Permutation
- Next Permutation
- Next Permutation
- Next Permutation
- Next Permutation
- Next Permutation
- Next Permutation
- Next Permutation
- Next Permutation
- Next Permutation
- hibernate里面的Restrictions用法
- 命令执行的判断依据: ; , &&, ||
- UIWindow & UIWindowLevel笔记
- [iOS]iOS8可用的识别用户方式(IDFA、UUID、IDFV)
- TLD特征点跟踪TLD(Tracking-Learning-Detection)
- Next Permutation
- Java中值与引用
- Spring的IOC容器—依赖注入
- OJ积累--对象转换
- IOS中UIDatePicker的setDate方法不好使(失效,无法设置date)
- 经典面试题
- Leetcode|Insert Interval
- 12. Integer to Roman
- OpenMP