gpt4 book ai didi

java - 如何用空格键更改边缘(Recrusiv)(JAVA)

转载 作者:行者123 更新时间:2023-12-01 19:22:30 29 4
gpt4 key购买 nike

如何使用空格键更改边缘(没有循环(for、while...)和 lambda)。

我有这个代码:

    public static String prettyPrint(Node tree) {
if(tree == null)
return "";
return "- " + tree.value + "\n" + prettyPrint(tree.left) + prettyPrint(tree.right);
}

返回是:

- f
- o
- C
- tasty
- F
- E
- e

但它需要像这样出现:

- f
- o
- C
- tasty
- F
- E
- e

(树:f[o[C[tasty,null],F],E[null,e]])

我不太擅长递归,你们能帮我吗?

最佳答案

  • 添加了一个计数器来跟踪树的深度。
  • 参数发生变化,无法使用 static int 值作为
    计数器。
  • 连字符(-)前有 14 个空格
  • 在java中无法将字符串相乘(但在python中可以)
    这就是为什么必须对其进行子串化。

    public static String prettyPrint(Node tree, int i) {

if (tree == null)
return "";


return " - ".substring(14 - i) + tree.value + "\n" + prettyPrint(tree.left, i + 1) + prettyPrint(tree.right, i + 1);
}

关于java - 如何用空格键更改边缘(Recrusiv)(JAVA),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59344282/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com