1. 程式人生 > >LeetCode-Easy刷題(28) Pascal's Triangle II

LeetCode-Easy刷題(28) 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?


給定一個索引k,返回帕斯卡三角形的第k行。 例如,給定k=3,
僅僅使用O(k)額外空間.


//從後向前
    public List<Integer> getRow(int rowIndex) {
        ArrayList<Integer> cur = new ArrayList<Integer>();
        cur.add(1);
        for (int i = 0; i < rowIndex; i++) {

            for (int j = cur.size()-1; j >0; j--) {
                cur.set(j, cur.get(j)+cur.get(j-1));
            }
            cur.add(1);
        }
        return cur;
    }