题目
leetCode 第 119 题,杨辉三角Ⅱ 关联类型:数组
给定一个非负索引 k,其中 k ≤ 33,返回杨辉三角的第 k 行。
在杨辉三角中,每个数是它左上方和右上方的数的和。
示例:
输入: 3
输出: [1,3,3,1]
做题时间
class Solution {
public List<Integer> getRow(int rowIndex) {
}
}
以上给出方法输入参数,完成作答。
题目分析
- 获取杨辉三角的指定行
- 直接使用组合公式C(n,i) = n!/(i!*(n-i)!)
- 则 第(i+1)项 = 第i项 * (n-i)/(i+1);
解答分析
本文只分析本人做题思路,仅供参考,了解一种解题思想,其他各种做题思路请上网查阅。
解答成功:
执行耗时:0 ms,击败了100.00% 的Java用户
内存消耗:35.8 MB,击败了98.21% 的Java用户
class Solution {
public List<Integer> getRow(int rowIndex) {
List<Integer> list = new ArrayList<>(rowIndex + 1);
long cur = 1;
for (int i = 0; i <= rowIndex; i++) {
list.add((int) cur);
cur = cur * (rowIndex - i) / (i + 1);
}
return list;
}
}