Leetcode 杨辉三角

108 阅读1分钟

持续创作,加速成长!这是我参与「掘金日新计划 · 6 月更文挑战」的第20天,点击查看活动详情

学习过程中将笔记整理跟大家分享,希望对大家也有所帮助,共同成长进步💪~
如果大家喜欢,可以点赞或留言💕~~~~,谢谢大家⭐️⭐️⭐️~~~

题目:杨辉三角

给定一个非负整数 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

解题代码和思路如下:

/**
 * @param {number} numRows
 * @return {number[][]}
 */
//第一种方法
// var generate = function (numRows) {
//     let arr = [[1]];//第一个固定是1
//     for (let i = 1; i < numRows; i++) {
//         arr[i] = [];
//         arr[i][0] = 1;//每一行左右两边也都是1
//         arr[i][i] = 1;
//         for (let x = 1; x < i; x++) {
//             arr[i][x] = arr[i - 1][x - 1] + arr[i - 1][x];
//         }
//     }
//     return arr;
// };
//第二种方法
var generate = function(numRows) {
        let number = [];
        for(let i = 0;i < numRows;i++){
            let arr = [];
            arr[0] = 1;
            arr[i] = 1;
            for(let j = 1;j< i ;j++){
                arr[j] = number[i-1][j-1] + number[i-1][j];
            }
            number.push(arr);
        }
        return number;
};

点击前往 LeetCode 练习

感谢大家阅读⭐️⭐️⭐️,如果喜欢,可以点赞或留言哟💕💕💕
后续会持续更新记录😊~~~

专栏推荐

推荐一下自己的专栏,欢迎大家收藏关注😊~

近期热门文章