zoukankan      html  css  js  c++  java
  • Leetcode 118 杨辉三角

    本题属于数组类题目,大体思路是每一行的首个和结尾一个数字都是1,从第三行开始,中间的每个数字都是上一行的左右两个数字之和。

    代码实现,

    public class Solution {

        public List<List<Integer>> generate(int numRows){
            List<List<Integer>> allrows = new ArrayList<List<Integer>>();   // 将list中嵌套一个list,并且实例化成新方法ArrayList
            ArrayList<Integer> row = new ArrayList<Integer>();                 //  对每一个list也进行实例化
            for(int i=0;i<numRows;i++){                                                  //  对杨辉三角的行数进行遍历,遍历行数;之后对索引0位置上加入数字1
                row.add(0, 1); 
                for(int j=1;j<row.size()-1;j++)                                           // 遍历杨辉三角下一层的list中每个数
                row.set(j, row.get(j)+row.get(j+1));                                   // 将上边两个数字加到下边
                allrows.add(new ArrayList<Integer>(row));                        //对全部航加上新list的集合
            }
            return allrows;                  //得出最终结果
       } 
    }

    summary:

    本题主要利用双层的list嵌套,并能想到将上边两个list中的数加到新的row中;同时用两层循环。

  • 相关阅读:
    Vue-cli
    vue—cli脚手架
    车联网——安全
    技术游玩
    高效寻找GitHub开源项目
    【孤*执】#2019SX# 最后der省选模板总结 ——BY.hss
    【浮*光】#状态压缩# 状压DPの相关练习题
    【浮*光】#字符串# 字符串の相关练习题
    【暖*墟】#数据结构# 可持久化Trie 与 XOR问题
    【浮*光】#数据结构# 数据结构の相关练习题
  • 原文地址:https://www.cnblogs.com/stevenstim/p/9516060.html
Copyright © 2011-2022 走看看