
Next Letter (medium)
Problem Statement
Given an array of lowercase letters sorted in ascending order, find the smallest letter in the given array greater than a given key.
Assume the given array is a circular list, which means that the last letter is assumed to be connected with the first letter. Put simply: if the key is greater than or equal to the last letter of the array, the search wraps around, and the answer is the first letter of the array.
Write a function to return the next letter of the given key.
Example 1:
Input: ['a', 'c', 'f', 'h'], key = 'f'
Output: 'h'
Explanation: The smallest letter greater than 'f' is 'h' in the given array.
Example 2:
Input: ['a', 'c', 'f', 'h'], key = 'b'
Output: 'c'
Explanation: The smallest letter greater than 'b' is 'c'.
Example 3:
Input: ['a', 'c', 'f', 'h'], key = 'm'
Output: 'a'
Explanation: As the array is assumed to be circular, the smallest letter greater than 'm' is 'a'.
Example 4:
Input: ['a', 'c', 'f', 'h'], key = 'h'
Output: 'a'
Explanation: As the array is assumed to be circular, the smallest letter greater than 'h' is 'a'.
Constraints:
- 2 <= letters.length <= 10<sup>4</sup>
letters[i]is a lowercase English letter.lettersis sorted in non-decreasing order.letterscontains at least two different characters.keyis a lowercase English letter.
Try it yourself
Try solving this question here:
Python3
Python3
. . . .
.....
.....
.....
Unlock this and all other premium problems.
No code editor for this lesson
This lesson focuses on concepts and theory