Skip to content

Commit b53e178

Browse files
Sean PrashadSean Prashad
authored andcommitted
Update 744_Find_Smallest_Letter_Greater_Than_Target.java
1 parent 891a674 commit b53e178

File tree

1 file changed

+10
-12
lines changed

1 file changed

+10
-12
lines changed
Lines changed: 10 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,25 +1,23 @@
11
class Solution {
22
public char nextGreatestLetter(char[] letters, char target) {
3-
if (target > letters[letters.length - 1]) {
4-
target = letters[0];
5-
} else {
6-
++target;
3+
if (target + 1 < letters[0] || target + 1 > letters[letters.length - 1]) {
4+
return letters[0];
75
}
86

9-
int l = 0, r = letters.length - 1;
7+
int start = 0, end = letters.length - 1;
108

11-
while (l <= r) {
12-
int mid = l + (r - l) / 2;
9+
while (start < end) {
10+
int mid = start + (end - start) / 2;
1311

14-
if (letters[mid] == target) {
12+
if (letters[mid] == target + 1) {
1513
return letters[mid];
16-
} else if (letters[mid] < target) {
17-
l = mid + 1;
14+
} else if (letters[mid] < target + 1) {
15+
start = mid + 1;
1816
} else {
19-
r = mid - 1;
17+
end = mid;
2018
}
2119
}
2220

23-
return letters[l % letters.length];
21+
return letters[end];
2422
}
2523
}

0 commit comments

Comments
 (0)