求全排列

#include <iostream>
using namespace std;

void myswap(int &a,int &b)
{
	int temp = a;
	a = b;
	b = temp;
}

void fuc(int a[],int n,int len)
{
	if(n==1)
	{
		for(int i=0;i<len;++i)
		{
			cout<<a[i]<<",";
		}
		cout<<endl;

	}
	for(int i=0;i<n;++i)
	{
		myswap(a[i],a[n-1]);
		fuc(a, n-1,len);
		myswap(a[i],a[n-1]);
	}
}

void main()
{
	int a[]= {1,2,3,4};
	fuc(a,4,4);
	system("pause");
}

原文地址:https://www.cnblogs.com/byfei/p/6389756.html