LeetCode - 744. Find Smallest Letter Greater Than Target
Определение: Лексикографический порядок
Код на языке Swift
func nextGreatestLetter(_ letters: [Character], _ target: Character) -> Character {
var left = 0
var right = letters.count - 1
while left <= right {
let mid = (right + left) / 2
if letters[mid] <= target {
left = mid + 1
} else {
right = mid - 1
}
}
if left == letters.count {
return letters[0]
}
return letters[left]
}
course_intro
leetcode