How to find the smallest letter in a sorted array that is larger than a given letter in TypeScript

1 Answer

0 votes
// Function to find the smallest letter greater than the given letter
function findSmallestLetterGreaterThanTarget(letters: string[], givenLetter: string): string {
    let left: number = 0;
    let right: number = letters.length - 1;
    let result: string = letters[0]; // Default to the first letter 

    while (left <= right) {
        const mid: number = left + Math.floor((right - left) / 2);

        if (letters[mid] > givenLetter) {
            result = letters[mid];
            right = mid - 1; // Narrow down to the left half
        } else {
            left = mid + 1; // Narrow down to the right half
        }
    }

    return result;
}

const letters: string[] = ['c', 'e', 'k', 'm']; 
const givenLetter: string = 'd';

const result: string = findSmallestLetterGreaterThanTarget(letters, givenLetter);

console.log(`The smallest letter greater than '${givenLetter}' is: ${result}`);



/*
run:

"The smallest letter greater than 'd' is: e" 

*/

 



answered Sep 21 by avibootz
...