Day13杨辉三角

news/2024/11/8 9:29:25 标签: java, leetcode, 算法

给定一个非负整数 numRows,生成「杨辉三角」的前 numRows 行。
在「杨辉三角」中,每个数是它左上方和右上方的数的和。

在这里插入图片描述
在这里插入图片描述

java">class Solution {
    public List<List<Integer>> generate(int numRows) {
          List<List<Integer>> res = new ArrayList<>();
        for (int i = 0; i < numRows; i++) {
            List<Integer> list = new ArrayList<>();
            for (int j = 0; j <= i; j++) {
                if (j == 0 || j == i) {
                    list.add(1);
                } else {
                    list.add(res.get(i - 1).get(j - 1) + res.get(i - 1).get(j));
                }
            }
            res.add(list);
        }
        return res;
    }
}

复杂度分析:
时间复杂度:O(n²),n是numRows。

空间复杂度:O(1)。不考虑返回值的空间占用。


http://www.niftyadmin.cn/n/5743678.html

相关文章

电脑蓝屏debug学习

电脑蓝屏debug学习 1、打开系统错误日志 2、打开蓝屏dmp文件 打开蓝屏dmp文件后&#xff0c;显示参数System Uptime表示系统运行时间。从该参数可以得知蓝屏出现的时间&#xff0c;从而进行蓝屏定位&#xff0c;例如小于1分钟为开机蓝屏&#xff0c;大于1分钟为上机或者玩的…

我要精通前端-布局方式理解总结

一、浮动 1、传统网页布局的三种方式 ​CSS 提供了三种传统布局方式(简单说,就是盒子如何进行排列顺序)&#xff1a; 1.普通流&#xff08;标准流&#xff09; 2.浮动 3.定位 这三种布局方式都是用来摆放盒子的&#xff0c;盒子摆放到合适位置&#xff0c;布局自然就完成了…

C#核心(8) 静态成员

前言 先前我们已经学习了成员变量以及成员属性。 静态成员对于在整个应用程序中共享数据和功能非常有用。它们可以用于跟踪全局状态、共享常量和实现单例模式等。但是需要注意的是&#xff0c;过度使用静态成员可能导致代码变得难以维护和测试&#xff0c;因此应谨慎使用。其…

论文阅读《Structure-from-Motion Revisited》

摘要 增量式地运动结构恢复是从无序图像集合中进行三维重建的一个普遍策略。虽然增量式地重建系统在各个方面上都取得了巨大的进步&#xff0c;但鲁棒性、准确性、完整度和尺度仍然是构建真正通用管道的关键问题。我们提出了一种新的运动结构恢复技术&#xff0c;它改进了目前…

7-在Ubuntu中使用超级终端Terminator提高工作效率

学习目标&#xff1a; 掌握在 Ubuntu 系统中安装与使用超级终端 Terminator&#xff0c;通过配置多个终端会话&#xff0c;提高命令行操作的效率和工作流管理&#xff0c;适应开发、运维等多任务操作需求&#xff0c;提升开发和管理效率。 学习内容&#xff1a; 1 安装 Termi…

C语言比较两个字符串是否相同

在不使用string.h中的内置函数的情况下 #include <stdio.h> #include <string.h> void main(){char arr1[]"hello world";char arr2[]"hello world";int i,a0;if(strlen(arr1)!strlen(arr2)){print("不相等");return 0;}for(i0;arr…

基于Springboot+Vue的果树系统(含源码数据库)

1.开发环境 开发系统:Windows10/11 架构模式:MVC/前后端分离 JDK版本: Java JDK1.8 开发工具:IDEA 数据库版本: mysql5.7或8.0 数据库可视化工具: navicat 服务器: SpringBoot自带 apache tomcat 主要技术: Java,Springboot,mybatis,mysql,vue 2.视频演示地址 3.功能 该系统…

软件设计师:排序算法总结

一、直接插入 排序方式&#xff1a;从第一个数开始&#xff0c;拿两个数比较&#xff0c;把后面一位跟前面的数比较&#xff0c;把较小的数放在前面一位 二、希尔 排序方式&#xff1a;按“增量序列&#xff08;步长&#xff09;”分组比较&#xff0c;组内元素比较交换 假设…