从6个数字任选4个组合
来源:互联网 发布:淘宝店铺美工主管职责 编辑:程序博客网 时间:2024/05/01 14:20
草稿:
for(i=0,i<3
result[3]=0
递归
i=1,i<4 count==3
result[2]=1
递归
i=2,i<5 count==2
result[1]=2
递归
i=3,i<6 count==1 i=4;i<6 i=5;i<6
result[0]=3 result[0]=4 result[0]=5
输出
思路:
1.假设取出A,从剩下的元素取出B,再从剩下的元素取出C,以此类推
2.从小到大取,若数组没有排序,最好进行排序,如果取出A,若再取比A小的数,则会重复
3.把组合的result存在一个result数组中,每4次输出一次
#include <stdio.h> int main() { int arr[]={1,2,3,4,5,6}; int result[4]; solve(arr,0,result,4,4,sizeof(arr)/sizeof(int)); }//arr为原数组//start为起始遍历位置//count起辅助计数作用//num为多少一组//arr_len为数组的长度 void solve(int *arr,int start,int *result,int count,int num,int arr_len){ int i; for(i=start;i<arr_len-count+1;i++) { result[count-1]=i; if(count-1==0) { int j; for(j=num-1;j>=0;j--) printf("%d ",result[j]+1); printf("\n"); } else solve(arr,i+1,result,count-1,num,arr_len); }}
1 0
- 从6个数字任选4个组合
- 5个数字任选3个组合
- m个数字任选n个数组进行组合
- 从A-za-z0-9任选6个组成一字符串
- 从n个数字中选取m个数字的组合算法(不分序列)
- 从含有m个元素的集合中任选n个的算法
- 从含有M个元素的集合中任选n个的排列组合
- 打印0~5这6个数字的全组合
- 算法之数学自由组合问题(从M个不重复的数字中选取N个数字进行自由组合)
- 从10个数字中取5个数的所有组合
- 输入n,m,从1-n个数字里输出和为m的组合
- C++从1~m数字中任取k个元素,求所有组合算法
- 从1-9找到k个数字组合和为n
- 简单的从5个数字里面取4个不重复的数字-java版
- Set集合解决年龄问题:年龄的4次方是个6位数。这10个数字正好包含了从0到9这10个数字,
- JAVASCRIPT去验证不能超过12个数字或英文或数字英文组合,还要求不能超过6个汉字,还要验证汉字和字母,数字的组合
- 给定2个数字,n,m,使得从1到n之间的数字组合,他们的和等于m,求所有组合
- 从m个字符选出n个的所有组合
- Windows系统下Python与NumPy安装方法
- 多用户开源商城,我选WSTMall
- 分布式锁
- Windows10 Apache2.4 PHP7 MySQL 5.7安装教程
- VCS中利用Makefile脚本仿真详细图解
- 从6个数字任选4个组合
- AsyncQueryHandler 异步查询框架
- AppCompatActivity 全屏
- EventBus3.0-粘性事件
- 好的插件
- HashMap的工作原理JDK1.6
- 安卓开发笔记(二)
- 有关Java学习的记录Two
- Service隐式显示启动