118. Pascal's Triangle

Description

Given numRows, generate the first numRows of Pascal's triangle.

For example, given numRows = 5, Return

[
     [1],
    [1,1],
   [1,2,1],
  [1,3,3,1],
 [1,4,6,4,1]
]

Solution

/**
 * @param {number} numRows
 * @return {number[][]}
 */
var generate = function(numRows) {
    "use strict";
    let result = [];
    for (let i = 0; i < numRows; i++) {
        let row = [];
        let ptr1 = 0, ptr2 = 1;
        for (let j = 0; j <= i; j++) {
            if (j === 0 || j === i) {
                row.push(1);
            } else {
                row.push(result[i-1][ptr1]+result[i-1][ptr2]);
                ptr1++;
                ptr2++;
            }
        }
        result.push(row);
    }
    return result;
};

results matching ""

    No results matching ""