在 JavaScript 中找出大於目標值的最小字母
假設我們有一個僅包含小寫字母的已排序字元陣列 letters。並且給定一個目標字母 target。
我們需要編寫一個 JavaScript 函式,該函式將陣列作為第一個引數,並將字母作為第二個引數。該函式應該找到列表中大於給定目標的最小元素。
我們必須記住,字母也會環繞回來。例如,如果 target 是 target = 'z' 且 letters = ['a', 'b'],則答案為 'a'。
例如 -
如果輸入陣列和字母是 -
const arr = ["c", "f", "j"]; const target = "a";
那麼輸出應該是 -
const output: "c";
示例
程式碼為 -
const arr = ["c", "f", "j"];
const target = "a";
const findNearestLetter = (arr = [], target = '') => {
let left = 0;
let right = arr.length - 1;
while (left <= right) {
let mid = left + (right - left) / 2;
if (arr[mid] <= target) {
left ++;
} else {
right --;
};
};
if (left == arr.length) {
return arr[0];
};
return arr[left];
};
console.log(findNearestLetter(arr, target));輸出
控制檯中的輸出將為 -
c
廣告
資料結構
網路
RDBMS
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP