leetcode——杨辉三角
2024-01-07 17:53:01
https://leetcode.cn/problems/pascals-triangle/
杨辉三角:
给定一个非负整数?numRows
,生成「杨辉三角」的前?numRows
?行。
在「杨辉三角」中,每个数是它左上方和右上方的数的和。
?核心思想:找出杨辉三角的规律,发现每一行头尾都是1,中间第[j]个数等于上一行[j-1]+ [j]
这道题要用vector<vector<int>>,其实类似二维数组。因为本人最近正在学习vector,所以就把这道题用vector写了一下。
class Solution {
public:
vector<vector<int>> generate(int numRows) {
vector<vector<int>> vv;
vv.resize(numRows);//开辟杨辉三角的空间
for(size_t i=0;i<numRows;i++)
{ //每一行的首和尾都为1
vv[i].resize(i+1);
vv[i][0]=1;
vv[i][vv[i].size()-1]=1;
}
//接下来就是对 不等于1的位置进行赋值
for(size_t i=0;i<vv.size();i++)
{
for(size_t j=0;j<vv[i].size();j++)
{
if(vv[i][j]!=1)
{
vv[i][j]=vv[i-1][j-1]+vv[i-1][j];
}
}
}
return vv;
}
};
文章来源:https://blog.csdn.net/2201_75733666/article/details/135429728
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!