JSFiddle - React, Tailwind, and code Playground

by Malin Jayakody

JavaScript

function comString(inputOne, inputTwo, startOne = 0, startTwo = 0) {
    if (startOne >= inputOne.length || startTwo >= inputTwo.length) {
        return '';
    }

    if (inputOne[startOne] === inputTwo[startTwo]) {
        return inputOne[startOne] + comString(inputOne, inputTwo, startOne + 1, startTwo + 1);
    } else {
        const valueOne = comString(inputOne, inputTwo, startOne + 1, startTwo);
        const valueTwo = comString(inputOne, inputTwo, startOne, startTwo + 1);

        return valueOne.length > valueTwo.length ? valueOne : valueTwo;
    }
}

console.log(comString('BACBAD', 'ABAZDC'));