小学生一枚,自学信奥中,没参加培训机构,所以命名不规范、代码不优美是在所难免的,欢迎指正。
标签:
杨辉三角、滚动数组
语言:
C++
题目:
给定一个非负索引 rowIndex
,返回「杨辉三角」的第 rowIndex
行。在「杨辉三角」中,每个数是它左上方和右上方的数的和。
截图:
代码:
class Solution {
public:
vector<int> getRow(int rowIndex) {
int a[2][34];
int now=1;
int pre=0;
a[pre][0]=1;
for(int i=1;i<=rowIndex;i++)
{
for(int j=0;j<=i;j++)
{
if(j==i or j==0)
{
a[now][j]=1;
}
else
{
a[now][j]=a[pre][j]+a[pre][j-1];
}
}
now^=1;
pre^=1;
}
vector<int> v;
for(int i=0;i<=rowIndex;i++)
{
v.push_back(a[pre][i]);
}
return v;
}
};