// 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"
*/