热门标签 | HotTags
当前位置:  开发笔记 > 人工智能 > 正文

二叉树的遍历方法及算法思想

本文介绍了二叉树的遍历方法,包括前序遍历、中序遍历、后序遍历和层次遍历,并给出了相应的算法思想。遍历是指按照某种次序依次访问二叉树中的所有结点。前序遍历先访问根结点,再遍历左子树和右子树;中序遍历先遍历左子树,再访问根结点,最后遍历右子树;后序遍历先遍历左子树和右子树,最后访问根结点;层次遍历按照从上到下、从左到右的顺序依次访问每一层的结点。这些遍历方法的算法思想在文章中也有详细介绍。

-------------------------------------资源来源于网络,仅供自学使用,如有侵权,联系我必删.

第一:

什么是遍历

?  单链表的遍历是指从第一个结点开始 (下标为0的结点), 按照某种次序依次访问每一个结点 。
?  二叉树的遍历是指从根结点开始 , 按照某种次序依次访问二叉树中的所有结点

 

第二:

前序遍历

? 算法思想
    ? 若二叉树为空 :
    • 空操作返回
   ? 若二叉树不为空 :
      1. 访问根结点中的数据
      2. 前序遍历左子树
      3. 前序遍历右子树

 

第三:

中序遍历

? 算法思想
    ? 若二叉树为空 :
     • 空操作返回
    ? 若二叉树不为空 :
       1. 中序遍历左子树
       2. 访问根结点中的数据
       3. 中序遍历右子树

 

第四:

后序遍历

? 算法思想
    ? 若二叉树为空 :
     • 空操作返回
    ? 若二叉树不为空 :
       1. 后序遍历左子树
       2. 后序遍历右子树
       3. 访问根结点中的数据

 

第五:

层次遍历

? 算法思想
   ? 若二叉树为空 :
    • 空操作返回
    ? 若二叉树不为空 :
       1. 访问根结点中的数据
       2. 访问第二层所有结点的数据
       3. 访问第三层所有结点的数据

       4.    ............

 

第六:

遍历算法的实现

 

 

小结

  二叉树仅仅比单链表多了一个指针域 , 但其遍历算法的种类却增加了很多

  递归定义的数据结构采用递归的算法进行遍历往往能达到简单可靠的效果


推荐阅读
author-avatar
叶小倩2502905191
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有