package y2019.Algorithm.array;

import java.util.ArrayList;
import java.util.List; /**
* @ProjectName: cutter-point
* @Package: y2019.Algorithm.array
* @ClassName: GetRow
* @Author: xiaof
* @Description: 119. Pascal's Triangle II
* Given a non-negative index k where k ≤ 33, return the kth index row of the Pascal's triangle.
* Note that the row index starts from 0.
* <p>
* Input: 3
* Output: [1,3,3,1]
* <p>
* 这里和之前的类似,就是获取这个塔的第几行,那么我们每次字需要存上一行,就可以求出下一行数据了
* a[i,j] = a[i - 1][j-1] + a[i - 1][j]
* @Date: 2019/7/2 9:13
* @Version: 1.0
*/
public class GetRow { public List<Integer> solution(int rowIndex) { List<Integer> preRow = new ArrayList();
preRow.add(1); //第一行
List<Integer> curRow = new ArrayList();
if (rowIndex == 0) {
return preRow;
} //如果不是第一行
curRow.add(1);
for (int i = 1; i <= rowIndex; ++i) {
//从第二行开始
curRow = new ArrayList<>();
for(int j = 0; j < i + 1; ++j) {
if(j == 0 || j == i) {
curRow.add(1);
} else {
curRow.add(preRow.get(j - 1) + preRow.get(j));
}
}
preRow = curRow;
} return curRow;
} public static void main(String args[]) {
GetRow getRow = new GetRow();
System.out.println(getRow.solution(0));
}
}

【LEETCODE】34、119题,Pascal's Triangle II的更多相关文章

  1. 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 [ ...

  2. LeetCode算法题-Pascal's Triangle II(Java实现)

    这是悦乐书的第171次更新,第173篇原创 01 看题和准备 今天介绍的是LeetCode算法题中Easy级别的第30题(顺位题号是119).给定非负索引k,其中k≤33,返回Pascal三角形的第k ...

  3. leetcode 118. Pascal's Triangle 、119. Pascal's Triangle II 、120. Triangle

    118. Pascal's Triangle 第一种解法:比较麻烦 https://leetcode.com/problems/pascals-triangle/discuss/166279/cpp- ...

  4. 学会从后往前遍历,例 [LeetCode] Pascal's Triangle II,剑指Offer 题4

    当我们需要改变数组的值时,如果从前往后遍历,有时会带来很多麻烦,比如需要插入值,导致数组平移,或者新的值覆盖了旧有的值,但旧有的值依然需要被使用.这种情况下,有时仅仅改变一下数组的遍历方向,就会避免这 ...

  5. 【LeetCode】118 & 119 - Pascal's Triangle & Pascal's Triangle II

    118 - Pascal's Triangle Given numRows, generate the first numRows of Pascal's triangle. For example, ...

  6. LeetCode OJ 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, ...

  7. 118/119. Pascal's Triangle/II

    原文题目: 118. Pascal's Triangle 119. Pascal's Triangle II 读题: 杨辉三角问题 '''118''' class Solution(object): ...

  8. 【LeetCode】Pascal's Triangle II 解题报告

    [LeetCode]Pascal's Triangle II 解题报告 标签(空格分隔): LeetCode 题目地址:https://leetcode.com/problems/pascals-tr ...

  9. LeetCode: Pascal's Triangle II 解题报告

    Pascal's Triangle II Total Accepted: 19384 Total Submissions: 63446 My Submissions Question Solution ...

随机推荐

  1. 刷新指定窗口页面的gridTable数据

    top.frames[windowName].$("#gridTable").trigger("reloadGrid"); 其中”windowName即是窗口页 ...

  2. Python之Django之views中视图代码重复查询的优化

    Django框架中views视图中如果多个函数都有同样的查询语句,例如: allcategory = Category.objects.all() remen = Article.objects.fi ...

  3. 网站无法连接上,但能上QQ的解决办法

    一句话:修改DNS的IP地址 参考win10修改IP地址:https://jingyan.baidu.com/article/19192ad8eef0c9e53e570717.html 在网络上搜索合 ...

  4. Java统计文件数量

    Java统计文件数量 package com.vfsd; import java.io.File; import java.io.IOException; /********************* ...

  5. kinova roslaunch kinova_bringup kinova_robot.launch kinova_robotType:=j2s7s300

    luo@luo-ThinkPad-W530:~$ luo@luo-ThinkPad-W530:~$ luo@luo-ThinkPad-W530:~$ luo@luo-ThinkPad-W530:~$ ...

  6. 【FreeMarker】Spring MVC与FreeMarker整合(二)

    前一篇介绍了FreeMarker的基本使用,本例介绍Spring MVC与FreeMarker整合 不熟悉项目搭建,可参考 [FreeMarker]FreeMarker快速入门(一) 整合 1.新建S ...

  7. 青葱的岁月 Mybatis JdbcType与Oracle、MySql数据类型对应列表

    Mybatis JdbcType Oracle MySql JdbcType ARRAY     JdbcType BIGINT   BIGINT JdbcType BINARY     JdbcTy ...

  8. PhpStorm的主题和字体设置

    打开PhpStorm,点击File,然后点击Setting 然后 点击Apply,就可以看到主题变化的效果,其次就是来设置字体,先要选取一个样式,然后点击Save As ,然后命名,我选择的是最后一个 ...

  9. 关于IO的操作(文件、网络)

    IO操作的流程总结和分析: (1)对象,易于编写代码    --->   (2)byte[],底层本质   ---->  (3)IO(文件.网络),最终IO处理掉

  10. 把github代码自动部署到服务器

    一.参考文献 https://developer.github.com/webhooks/ https://docs.gitlab.com/ee/user/project/integrations/w ...