744. Find Smallest Letter Greater Than Target
難易度
Easy
アプローチ
二分探索
class Solution {
public char nextGreatestLetter(char[] letters, char target) {
int letters_length = letters.length;
int low = 0;
int high = letters_length - 1;
if (target < letters[low] || target >= letters[high]) {
return letters[low];
}
while (low <= high) {
int mid = low + (high - low) / 2;
if (target < letters[mid]) {
high = mid - 1;
}
if (letters[mid] <= target) {
low = mid + 1;
}
}
return letters[low];
}
}