zoukankan      html  css  js  c++  java
  • LeetCode 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,3,1].

    Note:
    Could you optimize your algorithm to use only O(k) extra space?

    解法先参考原来第一题的代码,稍微修改就行。

    public class Solution {
        
        
        List<List<Integer>> lastNumberlist = new ArrayList<List<Integer>>();
        public List<Integer> getRow(int rowIndex) {
            rowIndex++;
            if (rowIndex==0) {
            return null;
            }
            ArrayList<Integer> list=new ArrayList<>();
            int num1,num2;
            list.add(1);
            lastNumberlist.add(list);
            if (rowIndex==1) {
                return lastNumberlist.get(lastNumberlist.size()-1);
            }
            list=new ArrayList<>();
            list.add(1);
            list.add(1);
            lastNumberlist.add(list);
            if (rowIndex==2) {
                return lastNumberlist.get(lastNumberlist.size()-1);
            }
            for (int i = 3; i <=rowIndex ; i++) {
                    int[] newline=new int[i];
                    for (int j = 0; j <= i/2; j++) {
                        if (j==0) {                
                            newline[j]=1;
                            newline[i-1-j]=1;
                        }else {
                            num1=lastNumberlist.get(lastNumberlist.size()-1).get(j);
                            num2=lastNumberlist.get(lastNumberlist.size()-1).get(j-1);
                            newline[j]=num1+num2;
                            newline[i-1-j]=num1+num2;        
                        }
                    }
                    list=new ArrayList<>();
                    for (int j : newline) {
                        list.add(j);
                    }
                    
                    lastNumberlist.add(list);
            }
            return lastNumberlist.get(lastNumberlist.size()-1);
        }
    }
  • 相关阅读:
    增加新分类daily——“每天学了啥?”
    gcc选项中的编译过程
    一个带路径复制的perl脚本
    git
    mysql explain 详解
    CentOS Python2.4升级到Python2.7
    mongoDb查询
    linux php 扩展
    php-redis 扩展安装
    redis Linux的安装方法
  • 原文地址:https://www.cnblogs.com/birdhack/p/4040972.html
Copyright © 2011-2022 走看看