首页 > 代码库 > 递归解决全排列问题

递归解决全排列问题

#include <bits/stdc++.h>
using namespace std;
void Perm(char list[],int index,int len)
{
    int i=0 ;
    char tmp ;
    if(index==len)
    {
        for(i=0;i<len;i++)
        {
            cout<<list[i]<<"," ;
        }
        cout<<endl ;
    }
    else
    {
        for(i=index;i<len;i++)
        {
            swap(list[index],list[i]);
            Perm(list,index+1,len) ;
            swap(list[index],list[i]);
        }
    }
}
int main()
{
    char tmp[]={‘1‘,‘2‘,‘3‘,‘4‘} ;
    Perm(tmp,0,4) ;
    return 0 ;
}

  

递归解决全排列问题