java树结构如何按顺序遍历_Java中通用树(n元树)的层级顺序遍历

(为避免冗长的解释,我要寻找的只是java中的泛型树(n元树)的级别顺序遍历。提供的代码有效并且需要级别顺序显示功能。一个小时,但找不到对通用n元树的引用。如果soemone可以帮助我在代码之上构建LevelOrderDisplay函数,将不胜感激,因为它可以帮助我了解所收到的队列错误。谢谢!)

我一直在尝试在工作中实现Autosys作业时间表的树形表示。由于每个作业(流程)可以具有一个或多个相关的作业,因此我决定采用n元树实现,以便可以映射流程。我使用相同的Java集合。我需要执行级别顺序遍历以显示作业依赖性。首先是“打印根”,然后是第一级的所有节点,然后是第二级的所有节点,依此类推。

我试图在StackOverflow上搜索一个多小时,但遇到的大多数示例都是针对Binary Trees的。我确实知道我需要为此使用队列。

根据我在研究过程中得到的结果,该算法应如下所示:如果这是错误的,请更正我,如果可能,请为此提供代码。也欢迎使用其他方法,但是我真正想要的是对通用树进行简单的基本级顺序遍历。

让我们将其作为通用树实现的有用线程。大多数代码已经在工作。请帮忙。

Algo:

对于每个节点,首先访问该节点,然后将其子节点放入FIFO队列中。

printLevelorder(tree)

1) Create an empty queue q

2) temp_node = root /*start from root*/

3) Loop while temp_node is not NULL

a) print temp_node->data.

b) Enqueue temp_node’s children (first

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值