• [软考]之树与二叉树的遍历 2015-10-04 16:07 898人阅读 评论(22) 收藏


      上一篇博客我们讲解了树与二叉树的组成等规则,这篇博客我们来说一下树和二叉树的遍历问题。


      什么是树,二叉树?


        对于这个还不清楚的可以去看我的上一篇博客:[软考]之树和二叉树下面咱们直接来看一张树和二叉树的图。二叉树只是树的一种特殊形式,即每个根只有至多两个子树,当然如果愿意,你也可以自己定义三叉树,四叉树。。。。。




        树的遍历


    首先应该知道,树的遍历有三种:先序遍历、后序遍历、层次遍历。二叉树的遍历与树的遍历相同,但是多了一种中序遍历(相当于广度优先遍历),下面咱们以上图为例来讲解如何进行树和二叉树的遍历。


          先序遍历


    先序遍历的顺序是根、左、右,对于任一子树,都按照根、左、右的顺序来遍历,下面来遍历咱们的图:

    树:A B E F C D G I H

    二叉树:A B D H I E C F G


          后序遍历


    后序遍历的顺序是左、右、根,对于任一子树,都按照左、右、根的顺序来遍历,下面看咱们图的遍历:

    树:E F B C I G H D A

    二叉树:H I D E B F G C A


          层次遍历


    层次遍历的顺序是按照顺序,一层一层的进行遍历,这个比较简单,直接上结果:

    树:A B C D E F G H I

    二叉树:A B C D E F G H I


    最后这个中序遍历对于二叉树才有意义,树的遍历用不到这个,因为树的子树可能不止两个,可能有很多个,大家注意一下。


          中序遍历


    中序遍历的顺序是左、根、右,对于任一子树,都按照左、根、右的顺序来遍历,下面看看咱们的遍历:

    树:无

    二叉树:H D I B E A F C G


    以上就是树和二叉树的遍历,对于前三种,其实树和二叉树的遍历是一样的,只有中序遍历是二叉树有而树所没有的。对于二叉树地先中后遍历来说,其实都是指根的位置,比如先:根左右,中:左根右,后:左右根,是不是超级简单了!

  • 相关阅读:
    利用服务器实现疫情查询小系统(Web版+APP)
    第五周总结
    第四周总结
    初试python爬取网页数据
    使用ECharts完成数据可视化
    第三周总结
    第二周总结
    求数组中最大子数组的和
    软工第二周博客作业
    MySQL学习笔记(3)——创建、查看、修改、删除数据库
  • 原文地址:https://www.cnblogs.com/zhemeban/p/7183136.html
Copyright © 2020-2023  润新知