【发布时间】:2016-11-26 00:37:19
【问题描述】:
我设法用这样的循环打印了一个金字塔:
void printtree() {
for (int i=0; i<row; i++){
for (int j=0; j<row-i-1; j++)
System.out.print(" ");
for (int k=row; k>row-i-1; k--)
System.out.print("* ");
System.out.println();
}
}
输出如下:
*
* *
* * *
* * * *
* * * * *
* * * * * *
* * * * * * *
* * * * * * * *
* * * * * * * * *
我想只使用递归,我应该如何构造函数?我关心的是嵌套循环,我只能解释单个内部或外部循环。我知道它被解释为 (row-1) 空格,后跟每行上的“*”行 #,然后更改为新行。这里的基本情况是什么?
【问题讨论】:
-
想象一下:为了打印偏移量为 K 个空格的最后 N 颗星,您应该首先打印偏移量为 K+1 个空格的 N-1 颗星。
-
你研究过递归吗?如果是这样,您是否尝试过自己实现此功能?当然,如果你不做任何研究,你会很难过。如果您已经尝试过,但无法让您的实现工作,请发布您的尝试