C++实现全排列(调用next_permutation)

简介:
#include <iostream>
#include <algorithm>
using namespace std;

int main()
{
	int i;
	int source[30];
	int size;

	cin >> size;

	// 初始化待排列数组元素为1、2、3...n
	for (i = 0; i < size; i++)
	{
		source[i] = i + 1;
	}

	while (true)
	{
		for (i = 0; i < size; i++)
		{
			cout << source[i];
		}
		cout << endl;

		// 调用next_permutation查找下一个排列
		if (!next_permutation(source, source + size))
		{
			break;
		}
	}
}

目录
相关文章
|
6月前
|
算法 测试技术 C++
C++二分算法习题:判断是否是完全平方数[容易]和排列箱子[容易]
C++二分算法习题:判断是否是完全平方数[容易]和排列箱子[容易]
|
3月前
|
C++ Go 自然语言处理
Golang每日一练(leetDay0047) 复制带随机指针链表、单词拆分I\II
Golang每日一练(leetDay0047) 复制带随机指针链表、单词拆分I\II
26 0
Golang每日一练(leetDay0047) 复制带随机指针链表、单词拆分I\II
|
3月前
|
Java Go C++
C/C++每日一练(20230426) 不喜欢带钱的小C、数组排序、超级素数
C/C++每日一练(20230426) 不喜欢带钱的小C、数组排序、超级素数
36 0
C/C++每日一练(20230426) 不喜欢带钱的小C、数组排序、超级素数
|
3月前
|
算法 C++ Java
Java每日一练(20230423) 数组元素统计、杨辉三角II、二进制求和
Java每日一练(20230423) 数组元素统计、杨辉三角II、二进制求和
28 0
Java每日一练(20230423) 数组元素统计、杨辉三角II、二进制求和
|
3月前
|
Go C++ Java
C/C++每日一练(20230411) 排列序列、翻转字符串里的单词、能被13又能被20整除的四位正整数的和
C/C++每日一练(20230411) 排列序列、翻转字符串里的单词、能被13又能被20整除的四位正整数的和
34 0
C/C++每日一练(20230411) 排列序列、翻转字符串里的单词、能被13又能被20整除的四位正整数的和
|
5月前
|
C++
c++力扣题目全排列
c++力扣题目全排列
|
6月前
|
机器学习/深度学习 算法 测试技术
C++前缀和算法的应用:DI序列的有效排列的原理、源码及测试用例
C++前缀和算法的应用:DI序列的有效排列的原理、源码及测试用例
|
6月前
|
算法 C++
剑指offer(C++)-JZ38:字符串的排列(算法-搜索算法)
剑指offer(C++)-JZ38:字符串的排列(算法-搜索算法)
|
11月前
|
C语言 C++
C/C++每日一练(20230514) 全排列、分数转小数、排序链表去重II
C/C++每日一练(20230514) 全排列、分数转小数、排序链表去重II
72 0
|
11月前
|
C++
C++ leetcode之排列与组合专题
C++ leetcode之排列与组合专题
66 0