【Leetcode】Pascal's Triangle

来源:互联网 发布:淘宝店铺文案范文 编辑:程序博客网 时间:2024/06/01 09:36

题目:

Given numRows, generate the first numRows of Pascal's triangle.

For example, given numRows = 5,
Return

[     [1],    [1,1],   [1,2,1],  [1,3,3,1], [1,4,6,4,1]]
解题思路:下一行的值等于上一行相同位置的值与上一行前一位置的值的和。每行均以1开始,以1结束。

代码:

class Solution {public:    vector<vector<int> > generate(int numRows) {        vector<vector<int>> result;        vector<int> CurrResult,LastResult;        if(numRows==0)return result;        CurrResult.push_back(1);        result.push_back(CurrResult);        for(int i=1;i<numRows;i++){            swap(CurrResult,LastResult);            CurrResult.push_back(1);            for(int j=1;j<i;j++){                CurrResult.push_back(LastResult[j-1]+LastResult[j]);            }            CurrResult.push_back(1);            result.push_back(CurrResult);            LastResult.clear();        }        return result;    }};


0 0
原创粉丝点击