将树作为 InOrder 序列中的字符串返回
Returning a tree as a string in InOrder sequence
我必须编写一个函数,它将一棵树作为参数并 returns 它作为一个按顺序排列的字符串。
这就是我得到的。
public static String concatInOrder( StringTreeNode t )
{
if(t == null) return "";
return (t.left+t.val+t.right);
}
但是我 运行 在这方面遇到了一些困难。几个问题。
- 我是否错误地处理了问题?
- 在不使用库等的情况下,如何提高我在二叉搜索树操作方面的能力?
- 我错过了什么?不是说inOrder序列是left,current,对吗? (val 是 value 的缩写,所以它当前所在的叶子。
是的,这是正确的顺序。您添加的 inorder
标签说明了很多。
您需要递归调用concatInOrder
方法:
public static String concatInOrder(StringTreeNode t)
{
if (t == null) return "";
return concatInOrder(t.left) + t.val + concatInOrder(t.right);
}
我必须编写一个函数,它将一棵树作为参数并 returns 它作为一个按顺序排列的字符串。
这就是我得到的。
public static String concatInOrder( StringTreeNode t )
{
if(t == null) return "";
return (t.left+t.val+t.right);
}
但是我 运行 在这方面遇到了一些困难。几个问题。
- 我是否错误地处理了问题?
- 在不使用库等的情况下,如何提高我在二叉搜索树操作方面的能力?
- 我错过了什么?不是说inOrder序列是left,current,对吗? (val 是 value 的缩写,所以它当前所在的叶子。
是的,这是正确的顺序。您添加的 inorder
标签说明了很多。
您需要递归调用concatInOrder
方法:
public static String concatInOrder(StringTreeNode t)
{
if (t == null) return "";
return concatInOrder(t.left) + t.val + concatInOrder(t.right);
}