我在试着把帕斯卡三角形打印出来。
这是一个普通的
int pascal(int l, int n) {
if (l == n || n == 0)
return 1;
else
return pascal(l - 1, n) + pascal(l - 1, n - 1);
}但是我只想使用一个pascal函数进行递归,比如
int pascal(int l, int n) {
return pascal();
}对于给定的条件,有什么解决方案吗?
发布于 2020-10-08 13:24:09
是的,你可以通过记忆来做,因为有一个重叠的子问题。
int pascalTriangle(int row, int col) {
if (col == 0)
return 1;
if (row == 0)
return col;
return row * pascalTriangle(row - 1, col - 1) / col;
}https://stackoverflow.com/questions/64256141
复制相似问题