2016 - 2024

感恩一路有你

深度优先遍历非递归 层序遍历二叉树与经典递归遍历的性能差距多大?

浏览量:1399 时间:2021-03-16 06:28:15 作者:admin

层序遍历二叉树与经典递归遍历的性能差距多大?

递归遍历二叉树程序很短,易懂。在性能方面,递归速度快,占用内存少。但递归程序包含深度优先和广度优先的遍历方法,比较复杂,容易出错。

现在CPU速度非常快,堆栈空间非常大。性能差异可以忽略不计。

或递归遍历二叉树程序可读性更好。

问:由邻接矩阵怎么求深度遍历和广度遍历以及详细过程?

你想要代码吗?让我们先用邻接矩阵来画图。深度优先遍历使用递归。对于一个节点,它递归地访问它没有访问过的相邻节点。就像走在迷宫里。当你知道没有路可走时,你可以往回走,找到下一个十字路口。宽度优先遍历使用队列。当一个节点不在队列中时,它会将其未访问的邻居节点排队。就像严重近视的人一样,如果掉了眼镜,他们会先找到最近的圆,然后再扩大一点。每次遍历都使用VIS数组标记来确保每个节点只被访问一次。

深度优先遍历非递归 图的广度优先遍历递归实现 图的广度优先遍历非递归

版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。