【LeetCode with Python】 119. Pascal's Triangle II

题目

原题页面:https://leetcode.com/problems/pascals-triangle-ii/
本文地址:http://leetcode.xnerv.wang/pascals-triangle-ii/
题目类型:Array
难度评价:Easy
类似题目:(E) Pascal's Triangle

Given an index k, return the kth row of the Pascal's triangle.

For example, given k = 3,
Return [1,3,3,1].

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


分析

和Pascal's Triangle类似的题目,不过要求的不是输出整个帕斯卡三角,而是输出其中的某一层了。


代码

class Solution:
    # @return a list of lists of integers
    def getRow(self, rowIndex):
        if rowIndex <= 0:
            return [1]
        elif 1 == rowIndex:
            return [1, 1]
        elif rowIndex >= 2:
            need_rowsnum = rowIndex - 1
            last_row = [1, 1]
            for i in range(0, need_rowsnum):
                new_row = [1]
                for j in range(1, len(last_row)):
                    new_row.append(last_row[j - 1] + last_row[j])
                new_row.append(1)
                last_row = new_row
            return last_row

results matching ""

    No results matching ""