C++中的字典序下一个排列
接下来,我们将了解如何用C++生成字符串的字典序下一个排列。字典序的下一个排列基本上是更大的排列。例如,“ACB”的下一个排列是“BAC”。在某些情况下,字典序的下一个排列不存在,如“BBB”或“DCBA”等。
在C++中,我们可以通过使用称为next_permutation()的库函数来实现。它存在于算法头文件中。
示例
#include <iostream>
#include <algorithm>
using namespace std;
main() {
string s = "DBAC";
for(int i = 0; i<5; i++) {
bool val = next_permutation(s.begin(), s.end());
if (val == false) {
cout << "No next permutation" << endl;
break;
} else
cout << "Next: " << s << endl;
}
}输出
Next: DBCA Next: DCAB Next: DCBA No next permutation
广告
数据结构
网络
RDBMS
操作系统
Java
iOS
HTML
CSS
Android
Python
C程序设计
C++
C#
MongoDB
MySQL
JavaScript
PHP