Сложность: easy
Для данного целого числа rowIndex верните rowIndex-ю строку (с индексацией с нуля) треугольника Паскаля.
Пример:
Input: rowIndex = 3
Output: [1,3,3,1]
👨💻 Алгоритм:
1️⃣Давайте представим, что у нас есть функция getNum(rowIndex, colIndex), которая дает нам число с индексом colIndex в строке с индексом rowIndex. Мы могли бы просто построить k-ю строку, повторно вызывая getNum(...) для столбцов от 0 до k.
2️⃣Мы можем сформулировать нашу интуицию в следующую рекурсию:
getNum(rowIndex, colIndex) = getNum(rowIndex - 1, colIndex - 1) + getNum(rowIndex - 1, colIndex)
3️⃣Рекурсия заканчивается в некоторых известных базовых случаях:
😎 Решение:
var getNum = function (row, col) {
if (row === 0 || col === 0 || row === col) {
return 1;
}
return getNum(row - 1, col - 1) + getNum(row - 1, col);
};
var getRow = function (rowIndex) {
let ans = [];
for (let i = 0; i <= rowIndex; i++) {
ans.push(getNum(rowIndex, i));
}
return ans;
};Ставь 👍 и забирай 📚 Базу знаний
