LeetCode 之 Pascal's Triangle II

LeetCode: Pascal's Triangle II (返回杨辉三角形第i行) 杨辉三角形大家应该不陌生,其第i行恰好为 (a + b)i 的展开系数。比如上一道题的例子: [ [1], [1,1], [1,2,1], [1,3,3,1], [1,4,6,4,1] ] 这道题要求直接返回第i行。题目描述为: Given an index k, return the kth row of the Pascal's triang 阅读详情

题目链接:Pascal’s Triangle II
这道题和Pascal’s Triangle很像,只是输出其中一行
那想到肯定是如果可以只是表示出一行的数据,而不是像Pascal’s Triangle根据前面一行的数据和计算后面的,就很容易解出来,那么根据第n行的第m个数据为C(n-1,m-1)组合数。
代码如下:

class Solution {
    public List<Integer> getRow(int rowIndex) {
        List<Integer> re = new ArrayList<Integer>();
        re.add(1);
        long tmp = 1;
        int n = rowIndex;
        for (int j = 1; j <= rowIndex; j++) {
        tmp = tmp * n-- / j ;
        System.out.println(tmp);
        re.add((int)tmp);
        }
        return re;
       }
       } 

C(n-1,m) = C(n-1,m-1)*(n-m)/m;所以可以根据前面一个数计算后一个数。
在计算C(n-1,m-1)过程中,出现很多问题,其中一个就是当n足够大的时候,会出现溢出,所以将tmp设置为long类型的,虽然AC了,但是还是没有能够解决这个根本的问题。

通过查看其它的解决思路,是通过前一行来计算后一行的数,但是为了不占用多余的空间,采用从后向前遍历的方式。
代码如下:

class Solution {
    public List<Integer> getRow(int rowIndex) {
        List<Integer> re = new ArrayList<Integer>();
        re.add(1);
        if(rowIndex == 0)
            return re;
        re.add(1);
        if(rowIndex == 1)
            return re;
        for(int j=2;j<=rowIndex;j++){
            for(int i=j-1;i>0;i--){
            re.set(i, re.get(i)+re.get(i-1));
        }
        re.add(1);
        }
        return re;
       }
    }
导数与微分在 FPS 射击游戏中的实际应用:把“手感”算出来 摘要:射击游戏开发中,单线程适用于简单小游戏(如单机打靶),所有任务由主线程顺序处理,代码简单但效率较低;多线程则适合复杂场景(如多人在线3D大作),通过渲染、逻辑、网络、音效等线程分工协作,确保画面流畅、响应迅速和实时同步。选择依据取决于游戏复杂度、联网需求和性能要求,小型游戏用单线程,大型高要求项目必须采用多线程架构。(149字) 阅读详情

相关推荐

Jenkins+docker 微服务实现自动化部署安装和部署过程

本文详细介绍了如何使用Docker部署Jenkins自动化服务器。主要内容包括:1)拉取Jenkins官方或BlueOcean镜像;2)创建容器并配置端口映射、数据卷挂载;3)设置防火墙规则;4)配置清华大学镜像加速;5)安装必要插件;6)SSH密钥配置;7)构建触发器设置;8)编写自动化构建脚本。通过Docker部署Jenkins可以简化安装流程,确保环境一致性,并利用容器特性实现快速启动和管理。文章提供了完整的配置步骤和注意事项,帮助用户快速搭建CI/CD环境。

qq_33665793的博客 1687

118. Pascal's Triangle(js)

118.Pascal's Triangle Given a non-negative integernumRows, generate the firstnumRowsof Pascal's triangle. In Pascal's triangle, each number is the sum of the two numbers directly above it. Exam...

weixin_30602505的博客 118

手把手教你用Python+GDAL处理0.5米吉林一号卫星影像(附代码)

本文详细介绍了如何使用Python和GDAL处理吉林一号0.5米高分辨率卫星影像,包括环境配置、数据预处理、分辨率融合、植被指数计算及地物分类等关键步骤。通过实战代码示例,帮助开发者高效处理大尺寸遥感数据,解决资源崩溃和算法选择问题,提升遥感影像分析能力。

weixin_30892037的博客 126

leetcode 随笔 Pascal's Triangle & Pascal's Triangle II

最近没有停止刷题,只不过大概从90到117几乎全部是二叉树的问题,所有的问题考察的几乎都是深度优先,广度优先等等,重复性很高,code基本都是一遍过,感觉没有什么整理的必要今天终于不是二叉树了。。o(╯□╰)oPascal's Triangle这个问题就比较简单了,就循规蹈矩的遍历就可以了class Solution { public: vector&lt;vector&lt;int&gt...

Runner_of_nku的博客 6209

Ubuntu-22.04安装VMware虚拟机并安装Windows10

最近在研究虚拟机,主要集中在KVM、Virtualbox和VMware这三种虚拟机上。前面我已经研究了前两种虚拟机的安装和使用方式,这篇文章介绍3兄弟中最后一个虚拟机安装和使用方式。Virtualbox虚拟机安装和使用KVM虚拟机安装和使用相比于前两种,VMware的安装方式最麻烦,但是综合体验下来我感觉流畅度最好。如果你确实有在Linux上使用VMware虚拟机的需求,那不妨跟着我看下去吧。1、gcc版本和内核版本一定要匹配上,否则会出各种错误。

jiexijihe945的博客 4115

OpenHarmony电源管理驱动架构剖析:HDI框架下的低功耗实现

鸿蒙电源管理驱动模块是OpenHarmony操作系统中负责设备电源状态管理的核心组件。该模块基于HDI(Hardware Device Interface)框架实现,提供了完整的电源管理功能,包括系统休眠/唤醒、运行锁管理、休眠模式控制等核心功能。public:// 主要接口函数// 运行锁管理private:// 内部辅助函数// 成员变量public:// 运行锁控制接口// 回调管理private:// 内部辅助函数。

m0_67505153的博客 208

leetcode:119. Pascal's Triangle II(Java)解答

转载请注明出处:z_zhaojun的博客 原文地址:http://blog.youkuaiyun.com/u012975705/ 题目地址:https://leetcode.com/problems/pascals-triangle-ii/ Pascal’s Triangle II Given an index k, return the kth row of the Pascal's tri

z_zhaojun的博客 2593

手把手教你学Simulink--基于Simulink的移相全桥DC-DC变换器仿真建模

特点高效性:通过实现零电压开关(ZVS)减少开关损耗。电气隔离:使用变压器提供输入输出间的电气隔离。适用于中高功率应用:如服务器电源、工业电源等。挑战控制复杂度:精确控制相位差以实现软开关。元件选择:合适的电感、电容值对于性能至关重要。动态响应:快速响应负载变化,保持稳定的输出电压。首先明确要模拟的任务内容。设计一个能够支持特定输入输出电压比的PSFB变换器。根据工作频率和谐振元件值确定合适的电路参数。实现有效的控制策略来维持输出电压稳定,并实现软开关。

MHD0815的博客 518

Pascal's Triangle II - LeetCode

目录 题目链接 注意点 解法 小结 题目链接 Pascal's Triangle II - LeetCode 注意点 只能使用O(k)的额外空间 有可能numRows等于0 解法 解法一:除了第一个数为1之外,后面的数都是上一次循环的数值加上它前面位置的数值之和,...

weixin_30257433的博客 185

斗鱼直播间弹幕爬虫实战:WebSocket连接与实时数据采集

在数据驱动的时代,直播平台的弹幕数据蕴含着巨大的价值——用户行为分析、舆情监控、弹幕情感分析、直播热度评估等应用场景层出不穷。斗鱼作为国内领先的直播平台,其弹幕系统基于WebSocket协议实现实时双向通信。本文将带您从零开始,使用Python构建一个完整的斗鱼直播间弹幕爬虫系统。

2201_76125261的博客 135

vue2/3 - 详细实现高德地图轨迹回放,vue高德地图车辆历史行驶轨迹播放,在地图上绘制行程轨迹|起点和终端的路程绘制|用户运动轨迹绘制及播放等(支持开始/暂停、进度条拖放、控制播放轨迹的倍速等)

vue2,vue3,nuxt,高德地图,轨迹,vue高德地图轨迹回放,历史轨迹回放,轨迹回放功能支持倍速及进度条拖拽,VUE高德地图轨迹回放、倍速调整、进度条拖拽,vue3高德地图轨迹回放,Vue实现地图路径回放,vue中使用高德地图实现历史轨迹回放并能控制播放轨迹的倍速,多条轨迹陆续播放,巡航轨迹做带进度条和倍速的轨迹回放,Vue高德地图路径回放,历史轨迹回放并能控制播放轨迹的倍速,使用高德地图实现轨迹播放和进度条控制,vue高德地图如何实现轨迹回放,高德地图做轨迹绘制用什么api,高德轨迹API,驾车轨

✅ 精选推荐文章 1万+

leetcode笔记:Pascal's Triangle II

该题要求只输出第k行的元素值,并且要求空间复杂度为`O(k)`,因此,采用的方法是只使用一个定长的数组,用于存放每一行的元素值,对于每个新的行,可对原先存放的行从后往前扫描,主要分为以下三种情况: 最后一个元素,直接等于1; 对于下标为i的中间元素,有:`result[i] = result[i-1] + result[i]`; 第一个元素,直接等于1;

liyuefeilong的专栏 1298

MinerU在线API异步调用代码开发示例

本文展示了如何使用Python异步编程调用MinerU在线API进行文件批量上传。代码示例包含三个主要功能:1) 通过API密钥获取文件上传URL;2) 使用信号量控制并发上传多个文件;3) 获取提取结果。实现采用httpx异步客户端和asyncio库,支持文件存在性检查、错误处理和日志记录。示例中演示了如何上传PDF文件到MinerU平台,并提供了获取批量处理结果的接口。该代码可作为异步调用MinerU API的参考实现。

拥抱具身智能,昇腾Ascend C 351

LeetCode力扣之119. Pascal's Triangle II

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?package leetCode; import ja...

LeeWei 306

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

Leetcode 细节实现 Pascal's Triangle II

题意:题意:给定数字rowIndex,返回杨辉三角的第rowIndex行 思路:按杨辉三角的定义生成rowIndex+1行杨辉,然后返回第rowIndex行即可 复杂度:时间O(n^2),空间O(n^2)

764

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

Leetcode之Pascal's Triangle II 问题

问题描述: Given an index k, return the kth row of the Pascal's triangle. Note: Could you optimize your algorithm to use only O(k) extra space? 示例: For example, given k = 3, Return [1,3,3,1]. 问题

漫漫学习路 272

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

【leetcode】119-Pascal's Triangle II

problem 119. Pascal's Triangle II code class Solution { public: vector<int> getRow(int rowIndex) { vector<int> res(rowIndex+1, 1); if(rowIndex<2) return ...

weixin_30502157的博客 77

【Leetcode】Pascal's Triangle II

题目链接:https://leetcode.com/problems/pascals-triangle-ii/ 题目: 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 opt

业精于勤,荒于嬉 1954

leetcode:Pascal's Triangle II 学会从后往前遍历

当我们需要改变数组的值时,如果从前往后遍历,有时会带来很多麻烦,比如需要插入值,导致数组平移,或者新的值覆盖了旧有的值,但旧有的值依然需要被使用。这种情况下,有时仅仅改变一下数组的遍历方向,就会避免这些困难。   最直观的一题是 剑指Offer上的面试题 4 另外一道例题,就是LeetCode上的 Pascal's Triangle II Pascal's Triangle

学无止境 343

Leetcode 119 Pascal's Triangle II(水)

题目连接:Leetcode 119 Pascal's Triangle II解题思路:空间复杂度可以优化到o(n),每次在数组末尾追加一个1,然后从右往左遍历,每个数加上它前一个数。这样的操作执行n次。class Solution { public: vector&lt;int&gt; getRow(int rowIndex) { vector&lt;int&gt; ans; a...

不慌不忙、不急不躁 241

LeetCode 119. Pascal's Triangle II(杨辉三角II) -- c语言

119. Pascal's Triangle II Given a non-negativeindexkwherek≤33, return thekthindex row of the Pascal's triangle. Note that the row index starts from0. In Pascal's triangle, each number is ...

d_benhua的博客 441

leetcode Pascal's Triangle II

和Pascal's Triangle类似,这里是不需要记录所有的,而是给定一个行号,返回那一行的数据就可以了。例如: For example, givenk= 3,Return[1,3,3,1]. 所以给0的时候返回[1]. 题目要求O(k)空间,也就是除了要返回的空间外,其他是常数空间。 那就用一个tmp来存上一个矩阵中i-1的值,然后按照加法原址更新。 class...

84

[leetcode]Pascal's Triangle II

问题描述: 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? 思路:

追梦船的专栏 857

LeetCode | Pascal's Triangle II

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? 按昨天的思路,不考虑空间复杂度的

do_smile的学习笔记 312

[Leetcode]Pascal's Triangle II

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? Pascal's

NoooName的专栏 333

【leetcode】Pascal's Triangle II

Pascal’s Triangle IIGiven 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?注

胖子jimmy的学习记录~ 328
上一篇: LeetCode 之 Pascal's Triangle
下一篇: LeetCode 之 Valid Palindrome
小菜鸟要高飞
博客等级 码龄12年 14粉丝 77原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值