主要是方便输出。在终端输出一般都是从左至右,从上到下,对于树形结构来说,前者自然表达的是从根节点到叶子节点无限层次树形笔记本,后者自然表达的是相邻分支,深度优先遍历符合输出次序。
无限层次树形笔记本实际上广度优先遍历实现起来更简单,只要在每一层左端建立一个链表头,将同一层的节点横向串联起来,从上到下遍历链表头数组就可以了。但考虑以下几点:
我们的屏幕没有这么宽无限层次树形笔记本,足以容纳整棵树,而且我们更趋向于纵向滚动浏览; 层次关系很难表示无限层次树形笔记本,光实现对齐就很麻烦; 每个节点需要维护一个额外next指针,如果这不是数据结构本身所需要的成员,对于存储空间来说是个额外的负担。
这也说明深度优先遍历第二个优点无限层次树形笔记本,它的实现对于数据结构本身是非侵入式的。
下一篇:跟腾讯工程师一起玩转 MySQL
如果您觉得 为什么用深度优先遍历 这篇文章对您有用,请分享给您的好友,谢谢
文章地址:https://www.tianxianmao.com/article/other/wsmysdyxbl.html
文章地址:https://www.tianxianmao.com/article/other/wsmysdyxbl.html
分类列表
换一批
精品推荐
SEO软件排行榜
推荐文章