在JavaScript的排序数组中查找所需的数字
我们有一个整数数组,该数组按升序排序。我们需要编写一个JavaScript函数,该函数将一个数组作为第一个参数,并将目标和数作为第二个参数。
该函数应该从数组中查找并返回两个这样的数字,当它们相加时将给出目标和。解决此问题的条件是我们必须在线性时间内并使用恒定的空间来执行此操作。
示例
以下是代码-
const arr = [4, 6, 8, 9, 11, 12, 18, 21];
const num = 27;
const findElements = (arr = [], target) => {
let left = 0;
let right =arr.length- 1;
let res = [];
while (left < right) {
let leftElement = arr[left];
let rightElement = arr[right];
if (leftElement + rightElement === target) {
res.push(arr[left]);
res.push(arr[right]);
break;
} else if (leftElement + rightElement > target) {
right--;
} else {
left++;
}
}
return res;
};
console.log(findElements(arr, num));输出结果以下是控制台输出-
[6, 21]
热门推荐
1 训练狗狗基础
2 怎么训练狗狗笑
3 怎么训练狗狗卧下
4 上海狗狗训练基地
5 训练狗狗排便
6 狗狗基础训练
8 如何训练狗狗装死
9 狗狗站姿训练
10 狗狗训练用品
11 训练狗狗吧
12 狗狗要怎么训练
13 怎么训练狗狗玩球
14 训练狗狗唤回
15 狗狗训练躺下
16 狗狗训练指令
17 狗狗的训练技巧
18 狗狗不好训练