列出{1,2,,,,n}的所有子集
2016-05-12 20:55
351 查看
列出{1,2,,,,n}的所有子集 方法一 using namespace std; int cnt=0; void print_set(int n,int *a,int cur) { for(int i=0;i<cur;i++) cout<<a[i]<<" "; if(cnt) cout<<endl; cnt++; int s=cur?a[cur-1]+1:1; for(int i=s;i<=n;i++){ a[cur]=i; print_set(n,a,cur+1); } } int main() { int a[10]; print_set(3,a,0); return 0; } 方法2 void f(int n,int *b,int cur) { if(cur==n) { for(int i=0;i<n;i++) if(b[i]) cout<<i+1<<" "; cout<<endl; return ; } b[cur]=1; f(n,b,cur+1); b[cur]=0; f(n,b,cur+1); } int main() { int *b; f(3,b,0); return 0; }
相关文章推荐
- 安卓基于监听事件处理(一)
- 打开网络适配的两种方法
- HDU 5167(map + 暴力)
- sprint
- Ubuntu下automake工具的使用
- CentOS硬软链接
- 模拟猜数(POJ2328)
- 生成1-n的排列
- zoj水题分类(自己练习)
- awk 参考
- 三种方法遍历ArrayList
- 启动hive报错:[ERROR] Terminal initialization failed; falling back to unsupported
- JAVA编写简单的http服务器
- sql中的行转列和列转行的问题
- SNF微信公众号客户端演示-微信开发客户端能干什么
- 斜率优化dp专题学习
- 亿级用户下的新浪微博平台架构
- 鸡兔同笼
- 排列组合问题
- 蓝桥杯 车票找零