讨论/《递归》 - 杨辉三角 II/
《递归》 - 杨辉三角 II

仿照着上一题的解法,在递归里“自底向上”的完善每一层的数组,感觉这个解法挺巧妙的。效果也不错,执行时间击败100%,内存消耗击败90.98%

class Solution {
    public List<Integer> getRow(int rowIndex) {
        Integer[] arr = new Integer[rowIndex+1];
        pascal(arr,rowIndex+1, 0);
        return Arrays.asList(arr);
    }
    public void pascal(Integer[] arr, int len, int layer){
        if(layer >= len)  return;
        if(layer == 0)  arr[layer]=0;
        
        // System.out.println("len,layer:"+len+layer);
        for(int i=layer-1; i>=1; i--){
            arr[i] = arr[i]+arr[i-1];
        }
        arr[layer] = 1;
        pascal(arr, len,++layer);
    }
}
展开全部 10 讨论