Pages

Sunday, June 1, 2025

Binary Strings using Recursion in C++

 #include <iostream>

#include <string>
using namespace std;

void binString(int n, int lastPlace, string ans) {
    if(n == 0) {
        cout << ans << endl;
        return;
    }
   
    if(lastPlace != 1) {
        binString(n-1, 0, ans+'0');
        binString(n-1, 1, ans+'1');
    } else {
        binString(n-1, 0, ans + '0');
    }
}

void binString(int n, string ans) {
    if(n == 0) {
        cout << ans << endl;
        return;
    }
   
    if(ans[ans.size()-1] != '1') {
        binString(n-1, ans+'0');
        binString(n-1, ans+'1');
    } else {
        binString(n-1, ans + '0');
    }
}

int main() {
    string ans = " ";
    binString(3, ans);

return 0;
}

No comments:

Post a Comment

Stack using Linked List – Partial (University Exam Topic)

 #include <iostream> using namespace std; struct Node {     int data;     Node* next; }; class Stack {     Node* top; public:     Stac...