Open In App

JavaScript Program to Generate all Binary Strings From Given Pattern

In this article, we are going to learn about Generating all binary strings from a given pattern in JavaScript. Generating all binary strings from a given pattern involves creating a set of binary sequences that follow the pattern’s structure, where specific positions in the sequences can be filled with ‘0’ or ‘1’ based on the pattern’s placeholders or rules.

Table of Content

We will explore all the above methods along with their basic implementation with the help of examples.



Approach 1: Using Recursion

In this approach,

Example: In this example, The BinaryStrings function generates binary strings by replacing ‘X’ in the input string ‘X1X’ with ‘0’ and ‘1’, recursively exploring all possibilities and printing the results.






function BinaryStrings(str, index = '') {
    index.length === str.length
        ? console.log(index)
        : str[index.length] === 'X'
            ? (BinaryStrings(str, index + '0'),
                BinaryStrings(str, index + '1'))
            : BinaryStrings(str, index + str[index.length]);
}
  
const result = 'X1X';
BinaryStrings(result);

Output
010
011
110
111

Approach 2: Using Queue

In this approach,

Example: In this example, we are using the above-explained approach.




function generateBinaryStrings(str) {
    const queue = [''];
  
    for (let i = 0; i < queue.length; i++) {
        const current = queue[i];
  
        if (current.length === str.length) {
            console.log(current);
        } else {
            const nextIndex = current.length;
            if (str[nextIndex] === 'X') {
                queue.push(current + '0');
                queue.push(current + '1');
            } else {
                queue.push(current + str[nextIndex]);
            }
        }
    }
}
  
const result = 'X1X';
generateBinaryStrings(result);

Output
010
011
110
111

Article Tags :