0️⃣python数据结构与算法学习路线 学习内容:
- 基本算法:枚举、排序、搜索、递归、分治、优先搜索、贪心、双指针、动态规划等…
- 数据结构:字符串(string)、列表(list)、元组(tuple)、字典(dictionary)、集合(set)、数组、队列、栈、树、图、堆等…
题目:
给定一个非负索引 k,其中 k ≤ 33,返回杨辉三角的第 k 行。
在杨辉三角中,每个数是它左上方和右上方的数的和。
输入输出:
输入: 3
输出: [1,3,3,1]
解题思路:
在一个数组中更新
左边[j-1] + 右边[j],更新到[j]
算法实现:
class Solution(object):
def getRow(self, rowIndex):
ret = [1] * (rowIndex + 1)
for i in range(2, rowIndex + 1):
for j in range(i - 1, 0, -1):
ret[j] += ret[j - 1]
return ret
出现问题: