# LeetCode 744. Find Smallest Letter Greater Than Target [744. Find Smallest Letter Greater Than Target]([leetcode_url](https://leetcode.com/problems/find-smallest-letter-greater-than-target/description/)) (<font color=#00AF9B>Easy</font> 51.8%) <!-- (<font color=#00AF9B>Easy</font> 53.8%) (<font color=#FFB800>Medium</font> 39.6%) (<font color=#FF375F>Hard</font>) --> - 限制 : > 2 <= letters.length <= $10^4$ > letters[i] is a lowercase English letter. > letters is sorted in non-decreasing order. > letters contains at least two different characters. > target is a lowercase English letter. - Solution 煩人的邊界處理完之後,就是一般的 binary search。 - 時間複雜度: $O(lgn)$ - 空間複雜度: $O(1)$ - 程式碼 ```c++= class Solution { public: char nextGreatestLetter(vector<char>& letters, char target) { int left_index = 0, right_index = letters.size() - 1, mid_index; while(left_index <= right_index) { mid_index = (right_index - left_index)/ 2 + left_index; if(letters[mid_index] <= target) { if(mid_index + 1 < letters.size() && letters[mid_index + 1] > target) return letters[mid_index + 1]; left_index = mid_index + 1; } else if(letters[mid_index] > target) right_index = mid_index - 1; } return letters[0]; } }; ``` </details>
×
Sign in
Email
Password
Forgot password
or
Sign in via Google
Sign in via Facebook
Sign in via X(Twitter)
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
Continue with a different method
New to HackMD?
Sign up
By signing in, you agree to our
terms of service
.