C++ Exercises(八)

来源:互联网 发布:服装数据 编辑:程序博客网 时间:2024/05/20 10:11

全排列问题:


#include 
"stdafx.h"
#include 
<math.h>
#include 
<stdio.h>
#include 
<iostream>
using namespace std;

void swap(int& a,int& b)
{
    
int tmp;
    tmp 
= a;
    a 
= b;
    b 
= tmp;
}
void Rerange(int a[],int m,int n)
{
    
if(m==n)
    {
        
for(int j=0;j<=m;++j)
            cout
<<a[j]<<'/t';
        cout
<<endl;
    }
    
else
    {
        
for(int i=m;i<=n;++i)
        {
            swap(a[m],a[i]);
            
            Rerange(a,m
+1,n);
            swap(a[m],a[i]);

        }
    }
}

int main(void)
{
    
int a[] = {1,2,3},tmp;
    Rerange(a,
0,2);
    cin
>>tmp;
    
return 0;
}

原创粉丝点击