ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

三种遍历方式确定二叉树的思考

2022-06-14 15:31:14  阅读:145  来源: 互联网

标签:结点 遍历 前序 确定 三种 二叉树 n1


  • 首先我们都知道数据结构老师讲的:前序+中序、前序+后序确定唯一的一棵二叉树,单独的前序+后序只能确定根的位置,而其左右孩子的排列是不能确定的,如左单枝或右单枝遍历得到的是相同的序列。
  • 接着就引出关于二叉树为什么在遍历过程中出现不能唯一确定的问题。由完整的一颗二叉树得到一定的序列,我们看似完整记录了树的信息,但其实在遍历的时候有很多细节是在“左,根,右”等规则约束下被忽略了的,比如三个结点构成的二叉树有五种情况,因为我们忽略了一些信息,所以就难以还原最初的形态。这个很像HASH表,将信息散列后是不可逆的,我们不可能根据散列得到的结果和哈希函数去还原最初的地址。
  • 所以前序和后序能唯一的确定一棵树吗?肯定可以,我们只是需要补充信息,这就引出了扩展二叉树:用“#” “。”等表示空结点,遍历过程同时记录空结点,由于树的结点只有三种情况:n0表示叶子,扩展二叉树中必定在序列中和两个空符号紧邻,n1表示只有一个空结点,另一个有n0,n1,n2三种情况,那么如果我们已知了序列的头或尾,按照一定顺序从叶子开始处理,那么n1也就能确定了,这个样子逐层解读划分子树直到头尾。

     

标签:结点,遍历,前序,确定,三种,二叉树,n1
来源: https://www.cnblogs.com/leo59123-world/p/16374850.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有