比如这个: 第n行有n个数,a[i][j]中保存的是第i行第j列的数,求的是从上到下沿途所有数的和的max,也就是d[1][1]
int i,j; for(j=1;j<=n;j++) d[n][j]=a[n][j]; for(i=n-1;i>=1;i--) { for(j=1;j<=i;j++) { d[i][j]=a[i][j]+max(d[i+1][j],d[i+1][j+1]); } }
时间复杂度是O(n方)