java编写一个递归方法,使用StdDraw方法画一颗以(y形三叉)为基础的树,第一个图形方向竖直朝上
时间: 2024-05-11 17:14:39 浏览: 128
java 递归 画树
5星 · 资源好评率100%
好的,这个问题可以回答。下面是Java代码实现:
```
public class YShapeTree {
public static void drawTree(double x, double y, double size, int levels) {
if (levels == 0) return;
// draw vertical line
StdDraw.line(x, y, x, y + size);
// draw left branch
drawTree(x, y + size, size/2, levels-1);
// draw right branch
drawTree(x, y + size, -size/2, levels-1);
}
public static void main(String[] args) {
int levels = 5;
double size = 1;
double x = 0.5;
double y = 0;
StdDraw.setCanvasSize(800, 800);
StdDraw.setScale(0, 1);
StdDraw.enableDoubleBuffering();
drawTree(x, y, size, levels);
StdDraw.show();
}
}
```
这是一个递归方法,通过StdDraw方法画一颗以y形三叉为基础的树。第一个图形方向竖直朝上。
阅读全文