从根开始逐层遍历二叉树的算法

标签 algorithm data-structures tree binary-tree

谁能推荐一种从根开始逐层遍历二叉树的算法?

最佳答案

这是由 breadth-first 完成的搜索你的树:

  • 创建一个树节点队列
  • 入队树根
  • 当队列不为空时,重复以下操作:
  • 出队节点,并打印其内容
  • 将当前节点的左子节点入队
  • 入队当前节点的右子节点

当您遵循此算法时,K 层的所有节点将在打印 K+1 层的第一个节点之前被打印,因此树将打印层-按级别。

关于从根开始逐层遍历二叉树的算法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16180824/

相关文章:

java - CopyOnWriteArrayList 如何是线程安全的?

java - 优化算法以在堆栈中找到最大值

php - 将数据库结果转化为数组

data-structures - 我可以在 1GB 内存中创建多少个整数?

java - 在 Java 中创建树的最有效方法是什么?

c++ - 使用表达式模板的中间结果

algorithm - "Least frequently used"- 算法

algorithm - 有断头台限制的同矩形内矩形打包算法的提示吗?

java - lucene使用的字符串匹配算法

algorithm - CREW 和 EREW 婴儿车的 bool OR 和 AND 问题