Это мой самый любимый вопрос на собеседовании. Я спрашиваю почти на каждом собеседовании, и менее 1 % кандидатов отвечают идеально.

Итак, в чем вопрос?

Вопрос: Напишите программу для печати выходного массива [-1, 6, 25, 62, 123] для входного массива [1,2,3,4,5]?

Ответ: Это очень простой вопрос для программирования. Сложная часть состоит в том, чтобы определить шаблон, как элемент входного массива преобразуется в элемент выходного массива.

Итак, я надеюсь, что большинство из нас решили эти вопросы в школьные годы.

Давайте проанализируем входной и выходной массив.

Если мы проанализируем, то увидим, что это увеличение каждого элемента по некоторому правилу. А что это за правило, давайте найдем.

1=> 1*1*1–2 = -1

2=> 2*2*2–2 = 6

3=> 3*3*3–2 = 25

4=> 4*4*4–2 = 62

5=> 5*5*5–2 = 123

Итак, какую закономерность мы нашли, каждый элемент умножается трижды сам на себя и вычитается 2.

Теперь программировать очень просто. Мы можем использовать методы for loop, array.map() для получения желаемого результата.

let inputArray = [1,2,3,4,5];
let outputArray = inputArray.map((i)=›(i*i*i-2));
console.log( 'Выходной массив => ',outputArray);
Выходной массив => [ -1, 6, 25, 62, 123 ]