nyoj+求所有组合数,dfs,递归需要好好理解
2015-12-07 00:03
260 查看
点击打开链接
///确定最大递归深度,确定递归终止条件,确定每层递归做什么…… #include<stdio.h> #include<stdlib.h> #include<string.h> #include<string> #include<cstring> #include<iostream> #include<algorithm> #include<math.h> int a[15]; using namespace std; void print(int t) { int i; for (i = 0; i<t; i++) printf("%d", a[i]); printf("\n"); } void DFS(int n,int r,int t) { if (r == 0){ print(t); return; } int i; for (i = n; i > 0; i--){ a[t] = i; ///printf("t=%d,i=%d\n",t,i); DFS(i - 1, r - 1, t + 1); } return; } int main() { int n, r; scanf("%d%d", &n, &r); DFS(n, r, 0); return 0; }
相关文章推荐
- git stash恢复
- memcached的分布式
- Parquet_11. Spark: DataFrames 和 Parquet -- 待完善
- C语言成长学习题(八)
- 学习php设计模式 php实现访问者模式(Visitor)
- 学习php设计模式 php实现建造者模式
- php计划任务之验证是否有多个进程调用同一个job的方法
- 学习php设计模式 php实现抽象工厂模式
- PHP函数func_num_args用法实例分析
- 学习php设计模式 php实现装饰器模式(decorator)
- 学习php设计模式 php实现桥梁模式(bridge)
- 学习php设计模式 php实现单例模式(singleton)
- 15个初学者必看的基础SQL查询语句
- MySQL缓存的查询和清除命令使用详解
- MySQL索引之聚集索引介绍
- MySQL索引之主键索引
- JSON遍历方式实例总结
- JavaScript的代码编写格式规范指南
- 基于jQuery 实现bootstrapValidator下的全局验证
- 程序员是否有必要读研究生