全排列问题

来源:互联网 发布:淘宝怎样打造爆款 编辑:程序博客网 时间:2024/05/18 03:50

#include <iostream>
#include<iomanip>
using namespace std;

int cnt=0;
void perm(int a[],int k,int n)
{
     if(k==n)
     {
           cout<<setw(3)<<++cnt<<'/t';
           for(int i=0;i<n;i++)
                  cout<<a[i]<<" ";
           cout<<endl;
  }

     else
           for(int i=k;i<n;i++)
     {
                 int t=a[k];a[k]=a[i];a[i]=t;
                 perm(a,k+1,n);
                 t=a[k];a[k]=a[i];a[i]=t;
     }

}
    
int main()
{
      int a[3]={1,2,3};
      perm(a,0,3);
      return 0;
}
    

原创粉丝点击