关于1~n排序问题
来源:互联网 发布:新东方英语网络教学 编辑:程序博客网 时间:2024/06/06 09:11
我开始不会,多看了刘大大的数书几遍后,领悟一点。
大致的思路是:
拿 1 2 3 为例
把每一个数都做为排头一次后面的数开始变化排列,
比如 1为排头, 2 3 排列。
易知 2可作为当前的排头,后面的数依次是这样、
还没完 这才1刚刚结束 即一层递归结束。
后面的就重复上述步骤即可。
#include<iostream> using namespace std;void print_permutation(int n, int* a,int cur){if(cur == n){for(int i=0 ;i<n;i++) printf("%d",a[i]);printf("\n");}else for(int i=1;i<=n;i++){int ok=1;for(int j=0;j<cur;j++) if(a[j]==i) ok=0;if(ok) {a[cur]=i;print_permutation(n,a,cur+1);} }}int main(){int n=3;int a[5]; for(int i=0;i<3;i++) cin>>a[i]; int cur=0; print_permutation(n,a,cur);}
这是可重排列的传送门:http://blog.csdn.net/qq_35283188/article/details/75666540;
阅读全文
0 0
- 关于1~n排序问题
- 【题目26】关于1-N的整数查找排序问题
- 关于3n+1问题的验证
- hibernate之关于1+N的问题
- 关于3n+1的问题
- 关于N皇后问题
- 关于N皇后问题
- 关于java的n=n++问题
- 稳定排序问题,要求O(n)时间,O(1)空间
- 关于setprecision(n)的问题
- 关于win32程序\n问题
- 【2001】关于N!的问题
- 关于冒泡排序复杂度O(n)
- 关于排序的问题
- 关于gridview排序问题
- 关于CListCtrl排序问题
- 关于map排序问题
- 关于排序问题
- C#异常
- js弹出框、对话框、提示框、弹窗总结
- Cocos2d之使用图集资源及TexturePacker的简单使用
- 搭建网站,和把大象装冰箱一样简单?
- 利用highcharts实现实时动态折线图
- 关于1~n排序问题
- androidStudio上传项目到github
- Java反射机制在Spring IOC中的应用
- Linux学习总结 unit03 文件的创建,查看与编辑
- Activiti工作流学习(三)
- ATL--创建简单的ATL之dll工程,添加“ATL简单对象”类的参数说明
- HDU5857 Median
- Jackson2
- poj3687 Labeling Balls【拓扑排序】