You sending wrong string in recursive call does this work
#include<iostream>
using namespace std;
void dubset(string s,string output){
if(s.length()==0){
cout<<output<<" ";
return ;
}
string op1=output;
string op2=output;
op2.push_back(s[0]);
s.erase(s.begin()+0);
dubset(s,op1);
dubset(s, op2);
return;
}
int main(){
dubset("ab","");
return 0;
}
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…