本文共 813 字,大约阅读时间需要 2 分钟。
本系列文章已全部上传至我的github,地址:
欢迎大家关注我的新浪微博, 欢迎转载,转载请注明出处
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?
题目大意:求杨辉三角的第i行数。
和上题一样:. 只不过这题只需要返回第i行数。这里可以用两个vector,一个记录上一行的数,一个存储本行的数。 代码如下:class Solution {public: vector getRow(int rowIndex) { vector pre; vector temp; int n = 0; while(n<=rowIndex) { temp.clear(); for(int i = 0 ; i < n+1 ; i++) { if(i==0||i==n) temp.push_back(1);//首尾为1 else temp.push_back(pre[i-1]+pre[i]);//其他行为上一行第i-1个加上第i个 } pre = temp;//记录上一行 n++; } return temp; }};