119. Pascal's Triangle II
Problem
Tags: Array
, Dynamic Programming
Given an integer rowIndex
, return the rowIndex^th
(0-indexed) row of the Pascal's triangle.
In Pascal's triangle, each number is the sum of the two numbers directly above it as shown:
Example 1:
Input: rowIndex = 3
Output: [1,3,3,1]
Example 2:
Input: rowIndex = 0
Output: [1]
Example 3:
Input: rowIndex = 1
Output: [1,1]
Constraints:
0 <= rowIndex <= 33
Follow up: Could you optimize your algorithm to use only O(rowIndex)
extra space?
Code
JS
// 119. Pascal's Triangle II (2/28/53841)
// Runtime: 72 ms (55.15%) Memory: 38.84 MB (94.95%)
/**
* @param {number} rowIndex
* @return {number[]}
*/
function getRow(rowIndex) {
const row = Array.from({ length: rowIndex + 1 });
row[0] = 1;
for(let i = 1; i <= rowIndex; i++) {
row[i] = 1;
for(let j = i - 1; j >= 1; j--) {
row[j] += row[j - 1];
}
}
return row;
};