class Solution {
public:
char nextGreatestLetter(vector<char>& letters, char target) {
//线性查找
for(int l:letters)
{
if(l>target)
{
return l;
}
}
return letters[0];
}
};
class Solution {
public:
char nextGreatestLetter(vector<char>& letters, char target) {
//二分查找,使用库函数
//如果vector容器中最后一个小于目标,则使用二分查找,否则返回数组
return target<letters.back()?*upper_bound(letters.begin(),letters.end()-1,target):letters[0];
}
};