zoukankan      html  css  js  c++  java
  • [leetcode]Pascal's Triangle

    简单题。不过又出现了一次初始状态设置的错误,当numRows==0时所作的设置,numRows==1时也需要。但一开始放到if block里面去了。

    public class Solution {
        public ArrayList<ArrayList<Integer>> generate(int numRows) {
            ArrayList<ArrayList<Integer>> ans = new ArrayList<ArrayList<Integer>>();
            if (numRows == 0) return ans;
            ArrayList<Integer> tmp = new ArrayList<Integer>();
            tmp.add(1);
            ans.add(tmp);
            if (numRows == 1) {
                return ans;
            }
            tmp = new ArrayList<Integer>();
            tmp.add(1);
            tmp.add(1);
            ans.add(tmp);
            if (numRows == 2) {
                return ans;
            }
            for (int i = 2; i < numRows; i++) {
                tmp = new ArrayList<Integer>();
                ArrayList<Integer> last = ans.get(i-1);
                tmp.add(1);
                int half = i / 2;
                for (int j = 1; j <= half; j++) {
                    tmp.add(last.get(j-1) + last.get(j));
                }
                for (int j = half+1; j <= i; j++) {
                    tmp.add(tmp.get(i-j));
                }
                ans.add(tmp);
            }
            return ans;        
        }
    }
    

      

  • 相关阅读:
    c实现二叉树
    C实现栈与队列
    c的链表实现
    LB_Keogh
    LB_Yi
    LB_Kim
    Lab7:同步互斥
    Lab6:进程的调度
    Lab45:进程和线程
    Lab3:虚拟内存管理
  • 原文地址:https://www.cnblogs.com/lautsie/p/3267027.html
Copyright © 2011-2022 走看看