每天一道LeetCode-----杨辉三角
Pascal’s Triangle
原题链接Pascal’s Triangle
杨辉三角,求出前n行的杨辉三角排列
杨辉三角的特点是triangle[i][j] = triangle[i-1][j-1] + triangle[i-1][j],越界的下标值为0
所以直接根据这个公式计算即可
代码如下
class Solution {
public:vector<vector<int>> generate(int numRows) {vector<vector<int>> res(numRows);if(numRows == 0) return res;res[0] = {1};for(int i = 1; i < numRows; ++i){res[i].reserve(i + 1);for(int j = 0; j < i + 1; ++j){int n = 0;/* 第一个j - 1会越界,直接设置为0 */n += (j > 0) ? res[i - 1][j - 1] : 0;/* 最后一个j会越界,直接设置为0 */n += (j < i) ? res[i - 1][j] : 0;res[i].push_back(n);}}return res;}
};
Pascal’s Triangle II
原题链接Pascal’s Triangle II
杨辉三角,找到第k行(从0开始),要求空间复杂度是O(k)
因为前k行每一行的元素个数都小于k+1,所以直接开辟k+1的数组空间,然后从第0行开始求,不断改变数组元素,最后求得第k行
又因为求新的一行时会用到上一行的对应列元素和前一列元素,所以不能从左向右而应该从又向左求
代码如下
class Solution {
public:vector<int> getRow(int rowIndex) {vector<int> res(rowIndex + 1);res[0] = 1;for(int i = 1; i <= rowIndex; ++i){/* 从后往前求 */for(int j = i; j >= 0; --j){int n = 0;n += (j > 0) ? res[j - 1] : 0;n += (j < i) ? res[j] : 0;res[j] = n;}}return res;}
};
两道题都是和杨慧三角有关,对着公式写代码就可以了
每天一道LeetCode-----杨辉三角相关推荐
- leetcode 杨辉三角 III
I 不要用排列组合,会导致溢出 class Solution { public:vector<vector<int> > generate(int numRows){ vect ...
- 曾经vb,c ,c++,python,写过的杨辉三角,致敬杨老前辈
// 杨辉三角形,又称贾宪三角形,帕斯卡三角形,是二项式系数在三角形中的一种几何排列.杨辉三角形同时对应于二项式定理的系数. 直角三角形杨辉三角 //c语言,求直角的 #include<stdi ...
- leetcode数组汇总_LeetCode刷题实战118:杨辉三角
算法的重要性,我就不多说了吧,想去大厂,就必须要经过基础知识和业务逻辑面试+算法面试.所以,为了提高大家的算法能力,这个公众号后续每天带大家做一道算法题,题目就从LeetCode上面选 !今天和大家聊 ...
- LeetCode简单题之杨辉三角 II
题目 给定一个非负索引 rowIndex,返回「杨辉三角」的第 rowIndex 行. 在「杨辉三角」中,每个数是它左上方和右上方的数的和. 示例 1: 输入: rowIndex = 3 输出: [1 ...
- LeetCode简单题之杨辉三角
题目 给定一个非负整数 numRows,生成「杨辉三角」的前 numRows 行. 在「杨辉三角」中,每个数是它左上方和右上方的数的和. 示例 1: 输入: numRows = 5 输出: [[1], ...
- leetcode 打印_LeetCode第118号问题:杨辉三角
本文首发于公众号「五分钟学算法」,是图解 LeetCode 系列文章之一. 个人网站:https://www.cxyxiaowu.com 杨辉三角应该是大家很早就接触到的一个数学知识,它有很多有趣的性 ...
- leetcode 119. 杨辉三角 II
题目 思路 根据上一题题解:leetcode 118. 杨辉三角 本题直接取第 i 行返回就可以了 题解 1.续上一题(118题)的解法,上一题的代码直接拿来用了 import java.util.A ...
- 动态规划应用--“杨辉三角”最短路径 LeetCode 120
文章目录 1. 问题描述 2. DP算法代码 3. LeetCode 120 三角形最小路径和 1. 问题描述 对"杨辉三角"进行一些改造.每个位置的数字可以随意填写,经过某个数字 ...
- python杨辉三角_yiduobo的每日leetcode 118.杨辉三角 amp;amp; 119.杨辉三角II
祖传的手艺不想丢了,所以按顺序写一个leetcode的题解.计划每日两题,争取不卡题吧. 118.杨辉三角https://leetcode-cn.com/problems/pascals-triang ...
- 【Leetcode每日一题】118. 杨辉三角(水题)
Leetcode每日一题 题目链接: 118. 杨辉三角 难度: 简单 解题思路: 无.见代码. 题解: class Solution:def generate(self, numRows: int) ...
最新文章
- 升腾联手VMware 发布首款本土化桌面虚拟化
- qemu-kvm部署虚拟机
- 2018 .NET开发者调查报告: .NET Core 是怎么样的状态
- VB调用VC DLL函数
- 工作308:控制change
- java编程思想学习(1):抽象
- java 避免大量if else_利用java的反射避免 多个 if else if else if else if
- python-day19-面向对象进阶-加载顺序,命名空间,组合(实现松耦合)
- Oracle用户密码过期问题解决
- 原码、反码、补码及位操作符,C语言位操作
- ArcGIS Pro中的回归分析浅析(下)地理加权回归工具(GWR)使用小结
- android开发 手写签名,Android实现手写签名
- 字符串函数的使用及模拟实现:strcpy、strcmp、strcat、strstr
- 12.rtl8188驱动移植
- 学习笔记(13):C++编程FFMpeg(QT5+OpenCV)实战--实时美颜直播推流-ffmpegSDK开发环境准备,第一个ffmpeg项目创建...
- 台式计算机启动叫两声,电脑开机2声短报警什么情况
- 通过云片网实现短信以及验证码的发送
- app怎么调用mysql数据_教你如何拿别人APP中的数据
- 国内用户访问国内服务器,国外用户访问国外服务器
- 再预告:DIY大宝剑,大宝剑二号 ——名字还没想好
热门文章
- Promise、Promise.all和Promise.race实现
- C语言学习之编写一个C程序,运行时输人abc三个值,输出其中值最大者。
- 有序数组求中位数问题
- 深入理解asp.net中的 __doPostBack函数
- 2017帝都租房攻略:昌平通州租金涨幅高达25%
- APScheduler —— Python化的Cron
- 【转】C#委托事件浅析
- 斐波那契数列的两种实现呢
- iis websocket同时连线人数_【NBA云专访】沈洋连线76人CEO 疫情期间如何管理球队?...
- [网络安全自学篇] 六十四.Windows安全缺陷利用之SMBv3服务远程代码执行(CVE-2020-0796)复现及防御机理