回溯法求数字1,2,……n 的所有子集
来源:互联网 发布:java 简单的审批流程 编辑:程序博客网 时间:2024/05/19 01:59
求数字1,2,n 的所有子集,用一个数组position来保存每次要回溯时的位置,而且每次前进时的位置起点为上一次位置的后一个位置开始。
#include <iostream>#include <vector>#define MAX 4using namespace std;vector<int> vec{1,2,3,4};vector<int> ans; //保存结果vector<int> position(n,-1);//保存每次回溯时的位置void print(vector<int> &v){cout<<"{ ";for(auto x:v)cout<<x<<' ';cout<<'}'<<endl;return;}void huisu(){int k=0;while(k>=0){while(position[k]<MAX-1){position[k]+=1;ans.push_back(vec[position[k]]);print(ans);if(k==MAX-1){ans.pop_back();break;}++k;position[k] = position[k-1];}ans.pop_back();--k;}cout<<"{ }"<<endl;}int main(int argc, char** argv) {huisu();return 0;}
0 0
- 回溯法求数字1,2,……n 的所有子集
- 回溯法求集合的所有子集
- 回溯法 求所有子集 所有排列
- 数字n的所有子集
- 求集合{1, 2, ..., n}的所有子集
- 求集合{1,2,...,n}的长度小于M(M<=n)的所有子集
- 求集合{1,2,...,n}的长度等于M(M<n)的所有子集
- 列出{1,2,,,,n}的所有子集
- 求{1,2,3}的子集————回溯法(递归与非递归)
- 【回溯法】求子集问题
- 回溯法求子集,排列组合
- 算法题:求所有和为N的子集
- 非递归求n个元素的所有子集
- 输出集合{1,2,...,n}的所有子集
- 分治法求集合的所有子集
- 有一个集合A,它又n个元素,请用回溯法输出它所有的子集。
- 求集合的所有子集
- 求集合的所有子集
- 对象类的创建和实例化
- 代码自定义导航栏
- 使用java反射机制对类字段进行选择性校验示例
- 【java】环境变量设置
- 实现页面定制化的一种思路
- 回溯法求数字1,2,……n 的所有子集
- metadata
- 第一个web项目——UniNote
- MySQL的基本数据库操作命令
- ubuntu 右上角的”时间“不见了
- CentOS 6.5 安装 Nginx 1.7.8 教程
- Android RecyclerView的使用
- 封装JS文件到DLL中并在页面中调用
- Matlab 处理时间加减问题