Easy

Len Chen
1 min readSep 16, 2018

Problem

Given a non-negative index k where k ≤ 33, return the kth index row of the Pascal’s triangle.

Note that the row index starts from 0.

In Pascal’s triangle, each number is the sum of the two numbers directly above it.

Example:

Input: 3
Output: [1,3,3,1]

Follow up:

Could you optimize your algorithm to use only O(k) extra space?

Solution

Like #118, we also use dynamic programming approach for calculating elements of current level. But because it needs to use the element at matrix[row-1][col-1], our iterating direction should be from end to front.

Complexity

As we explained in #118, line 20 may be run 1 + 2 + … + k = O(k²) time which k is rowIndex. Hence, it’s time complexity is O(k²).

However, we only allocate a list with n+1 size so space complexity is only O(k).

--

--

Len Chen
Len Chen

No responses yet