题目描述
题目难度:Easy
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.
Example:
Input: 3
Output: [1,3,3,1]
Follow up:
Could you optimize your algorithm to use only O(k) extra space?
AC代码
class Solution {
public List<Integer> getRow(int rowIndex) {
List<Integer> resList = new ArrayList<>();
if(rowIndex < 0) return resList;
resList.add(1);
if(rowIndex == 0) return resList;
resList.add(1);
if(rowIndex == 1) return resList;
int n1 = 1, n2 = 1;
for(int i = 0;i < rowIndex - 1;i++){
int size = resList.size();
n1 = resList.get(0);
n2 = resList.get(1);
for(int j = 1;j <= size - 1;j++){
resList.set(j, n1 + n2);
n1 = n2;
if(j + 1 <= size - 1) n2 = resList.get(j + 1);
}
resList.add(1);
}
return resList;
// 1 4 3 1
// 1 4 6 4 1
}
}