问题描述:
求任意长度的(ABCD.....)全部n=0,1,2 ....组合情况(n小于等于串的长度)
解决思路:
- 如果串的长度固定,n的值固定循环嵌套
- 在这里以深度优先形成一棵树,如下图:
源代码:
#include#include using namespace std;int N=0; //计算组合数 string X; //待排序的字符串 string R="";//存放结果的字符串 // k 处理的位置// goal 从目的串中要取的元素数 在这里也可以理解为递归的深度 // 该函数以深度优先形成一棵树,且树杈数随着的变化K而变化 void Combination(int k,int goal) { if(goal==0)//出口 { cout< < >X; cin>>goal; Combination(0,goal); cout< <