#include<stdio.h>
#include<iostream>
#include<list>
#include<string>
#include<algorithm>
using namespace std;
int main()
{
list<string> fun(string,int);
list<string> lst=fun("ABCDE",3);
list<string>::iterator lstator=lst.begin();
while(lstator!=lst.end())
{
cout<<*lstator<<'\n';
lstator++;
}
return 0;
}
list<string> fun(string s,int n)
{
list<string> lst;
if(n==0)
{
lst.push_back("");
return lst;
}
for(int i=0;i<s.length();i++)
{
char x=s[i];
list<string> t=fun(s.substr(i+1),n-1);
list<string>::iterator tator=t.begin();
while(tator!=t.end())
{
string strt= x+(*tator);
lst.push_back(strt);
tator++;
}
}
return lst;
}
版权归属:
王小木人个人技术文章记录
许可协议:
本文使用《署名-非商业性使用-相同方式共享 4.0 国际 (CC BY-NC-SA 4.0)》协议授权
评论区