Find Smallest Letter Greater Than Target (LeetCode 744)
Circular sorted letters: binary search upper bound, wrap to letters[0].
def nextGreatestLetter(letters, target):
lo, hi = 0, len(letters)
while lo < hi:
m = (lo + hi) // 2
if letters[m] <= target: lo = m + 1
else: hi = m
return letters[lo % len(letters)]
Mention wrap-around case in examples. More: AI tool for job interviews.
(Affiliation: I work on Linkjob AI.)