全排列
2016-02-29 10:09
381 查看
#include<cstdio> #define MAX 100 void Perm(int a[],int n,int s,int r[],int m) { int flag=0,i,k,j; int b[MAX]; for(i=0;i<n;i++) { flag=1; r[s]=a[i]; //r[]用于存放已经排好的 for(k=0,j=0;k<n;k++) if(k!=i) { b[j++]=a[k]; //存放子序列 } Perm(b,n-1,s+1,r,m); } if(flag==0) { printf("\n"); for(k=0;k<m;++k) printf("%d ",r[k]); printf("\n"); } } int main() { int r[MAX],a[MAX]; int i,n; scanf("%d",&n); for(i=0;i<n;i++) scanf("%d",&a[i]); Perm(a,n,0,r,n); return 0; }
相关文章推荐
- Android布局— — —表格布局
- Java中的继承、封装、多态、抽象
- 罗森伯格喜获腾讯2015年优秀供应商奖
- 使用Android Studio与ArcGIS Android SDK的开发环境部署和HelloWorld
- 单例
- bzoj3926 诸神眷顾的幻想乡 后缀自动机
- 初识react
- Android ViewPager 小圆点指示器
- MyCat源码分析系列之——BufferPool与缓存机制
- apache的proxy代理总访问后端web的第一个虚拟主机
- 脑洞大开之采用HTML5+SignalR2.0(.Net)实现原生Web视频
- easyui combobox加载内嵌对象赋值
- windows环境下如何安装jdk
- 144. Binary Tree Preorder Traversal
- Java Enum 基本原理
- (1)WePHP 开启WePHP
- Theano
- 字典序最小问题 (贪心)
- request.getParameter与request.getParameterNames以及request.getParameterValues的区别
- nodejs进程