首页 > 其他分享 >杨辉三角

杨辉三角

时间:2022-11-27 01:12:19浏览次数:64  
标签:格子 示例 List numRows 杨辉三角 三角形

给定一个非负整数 numRows,生成「杨辉三角」的前 numRows 行。

在「杨辉三角」中,每个数是它左上方和右上方的数的和。

示例 1:

输入: numRows = 5
输出: [[1],[1,1],[1,2,1],[1,3,3,1],[1,4,6,4,1]]
示例 2:

输入: numRows = 1
输出: [[1]]

提示:

1 <= numRows <= 30

作者:力扣 (LeetCode)
链接:https://leetcode.cn/leetbook/read/top-interview-questions-easy/xncfnv/
来源:力扣(LeetCode)
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

首先观察这个三角形的特点,杨辉三角形是一个等边三角形,其中左边和右边每个格子的值都是1。
三角形斜的不好看,如果我们把这个三角形往左边拉直就会发现,除了两边的都是1以外,其他每个格子的值都是他正上面格子和左上角格子的和

class Solution {
    public List<List<Integer>> generate(int numRows) {
        //结果值
        List<List<Integer>> res = new ArrayList<>();
        //列表
        List<Integer> list = new ArrayList<Integer>();
        for(int i=0;i<numRows;i++){
            //头部尾部添加1,为1121,11331
             list.add(0,1);
             //避免头尾,从1开始他的值是上面和右上之和
             for(int j=1;j<list.size()-1;j++){
                 list.set(j,list.get(j) + list.get(j+1));
             }
             //每次添加要新建列表放入,不然直接add(list)会把原有的值改变
            res.add(new ArrayList<>(list));
        }
        return res;
    }
}

标签:格子,示例,List,numRows,杨辉三角,三角形
From: https://www.cnblogs.com/xiaochaofang/p/16928818.html

相关文章

  • java打印杨辉三角
    java打印杨辉三角方法一使用二维数组的方法:importjava.util.Scanner;publicclassYangHui1{publicstaticvoidmain(String[]args){/*杨辉三角如......
  • 杨辉三角
    importjava.util.Scanner;publicclassEext{ publicstaticvoidmain(String[]args){ //打印一个十行的杨辉三角 /* 1 11 121 1331 14641 1510......
  • 杨辉三角
    #include<stdio.h>intmain(){ inta[10][10]={}; inti; intj; //给对角线,首列元素赋值为1 for(i=0;i<10;i++){ for(j=0;j<=i;j++){ if(i==j||j=......
  • leetcode java 杨辉三角
    简介杨辉三角是一道简单题,可以通过类似一层推下一层的方式进行计算,但是好像看过一个题解,采用的方式是组合数。本来想采用组合数,尝试了double溢出尝试了long溢出,尝试......
  • 学习笔记:python杨辉三角
    python学习问题输出杨辉三角刚开始着手这题,我先是使用杨辉三角的公式,采用比较简洁的写法进行。defjc(x):r=1forkinrange(1,x+1):r=r*k......
  • LeetCode算法笔记 118. 杨辉三角
    importjunit.framework.TestCase;importjava.util.ArrayList;importjava.util.List;publicclassLeetCode04_2extendsTestCase{/****11......
  • 杨辉三角II
    杨辉三角一、题目描述给定一个非夫的索引rowIndex,返回[杨辉三角]中的,每个数是它左上方和右上方数的和。返回的是给定的索引处的行。实例:输入:rowIndex=3输出:[1,3......
  • 杨辉三角的变形---牛客网
    杨辉三角的变形_牛客题霸_牛客网(nowcoder.com) #include<iostream>usingnamespacestd;intmain(){//这个树的偶数规律为-1-123242324int......
  • C++ 打印杨辉三角/贾宪三角/帕斯卡三角
    #include<iostream>#include<iomanip>#include<windows.h>#include<fstream>#include<string>usingnamespacestd;#defineN10intmain(){inta[N][N......
  • 【Java基础】二维数组实现杨辉三角
    1.什么是杨辉三角每一行头尾都为1,每个数都等于上面两个数之和arr[3][1]=arr[2][0]+arr[2][1];arr[3][2]=arr[2][1]+arr[2][2];2.实现int[][]arr=new......