我被要求按排序顺序显示二叉搜索树。树的节点包含字符串。
我不确定攻击此问题的最佳方法是什么。我应该穿越树并在我走的时候显示吗?我应该将树展平成数组,然后在显示之前使用排序算法吗?
我不是在寻找实际的代码,只是指导下一步。
答案 0 :(得分:4)
查看Tree Traversal的选项,这比您想象的要容易。祝你好运:)
答案 1 :(得分:3)
这是binary search tree(BST)吗? “只是”binary tree(不是搜索)没有任何可以帮助您的属性(实际上,不可能是有效负载中定义的任何顺序!),但是对于BST,情况完全不同(实际上我指向的第一个维基百科页面给出了简洁的伪代码(好吧,好的,Python ;-)用于BST的有序遍历 - 不仅仅是任何二进制树当然。
那么,你在问题和标签中省略了“二进制”和“树”之间的绝对关键词搜索吗?
答案 2 :(得分:2)
二进制搜索树只是一棵树,你可以打印成经典的方式(预订,订购,预订)
例如:
print(node){
if(node != null){
printOut(root.value);
print(node.left);
print(node.right);
}
}