我正在尝试将由节点组成的BinaryTree转换为用于GUI视图的JTree。我认为这是我需要的伪代码:
if root == null
set data as root
if data < root
if leftNode == null
add data to left node
if data < leftNode
add data to left node
if data > leftNode
add data to right node
if data > root
if rightNode == null
add data to right node
if data < right node
add data to left node
if data > right node
add data to right node
有关如何实际实现此伪代码的任何想法?我知道需要进行一些递归才能使其影响所有子节点。
答案 0 :(得分:4)
不是遍历您的树,而是实现TreeModel
接口,以便它按照JTree
的请求获取树的节点。可以在Creating a Data Model中找到示例。
附录:FileSystemModel
是一个相关的例子。