C++ Exercises(八)
全排列问题:
#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;
}
作者:洞庭散人
出处:http://phinecos.cnblogs.com/
本博客遵从Creative Commons Attribution 3.0 License,若用于非商业目的,您可以自由转载,但请保留原作者信息和文章链接URL。
posted on 2007-11-19 10:49 Phinecos(洞庭散人) 阅读(228) 评论(0) 编辑 收藏 举报