什么是二叉数?它是哪里面的知识?
2010-01-03 17:16
218 查看
它是一种树型结构,简单地说,形如下面的图形称为二叉树。它是数据结构的知识 除空二叉树外,有一个唯一的根接点,左、右子树都是二叉树。 可以得知: 1、 二叉树的每个结点至多只有二棵子树(即不存在结点的度大于2的结点)。 2、 二叉树的子树有左右之分,其次序不能任意颠倒。 二叉树的性质: 1、 在二叉树的第i层上至多有2i-1个结点(i>=1)。 2、深度为k的二叉树最多有2k-1个结点。 3、 对任何一棵二叉树T,如果其终端结点数为n0个,度为2的结点数为n2个,则n0=n2+1个。 满二叉树:是指一棵深度为K且有2k-1个结点的二叉树。 二叉树的遍历方法 (先序)先根遍历:(根左右)先访问根,再访问左子树,最后访问右子树,则可得如下的序列:abcdef (中序)中根遍历:(左根右)先访问左子树,再访问根,最后访问右子树,则可得如下的序列:cbdaef (后序)后根遍历:(左右根)先访问左子树,再访问右子树,最后访问根,则可得如下的序列:cdbfea 练习: 1、表达式(1+34)*5-56/7 的后缀表达式为( )。 A) 1+34*5-56/7 B) -*+1 34 5/56 7 C) 1 34 +5*56 7/- D) 1 34 5* +56 7/- E) 1 34+5 56 7-*/ 解:表达式(1+34)*5-56/7 的后缀表达式即为该表达式对应的二叉树的后序遍历。 所以,首先按运算优先级关系画出(1+34)*5-56/7的二叉树,然后再用后序遍历得出结果。
相关文章推荐
- [汇编] 001基础知识-什么是汇编
- 知识积累3:什么是反向代理,如何区别反向与正向代理
- 谁能告诉哪里能下的关于思科网络知识的书
- selenium自动化基础知识--什么是自动化测试
- 1.1 基础知识——CMMI是什么东西?
- 软件测试人员必备网络知识(一):什么是cookie?
- 股票入门基础知识1:什么是股票和股份?
- 知识管理的目的是什么?如何进行知识管理?
- [C/CPP系列知识] 在C中使用没有声明的函数时将发生什么 What happens when a function is called before its declaration in C
- 知识图谱1-【什么是RDF?】
- 上海自贸区是什么?在哪里?面积多大?设立意义
- C#中 property 与 attribute的区别,他们各有什么用处,这种机制的好处在哪里?
- SAP BW 系统管理员是一个什么样的角色,日常工作是什么,具体该掌握一些什么知识
- 手表知识集锦,爱好者必备 机械表使用硅游丝的优势是什么?
- IE缓存有什么用?怎么删除?Internet选项在哪里?
- 企业知识管理究竟是什么?
- 什么是数字签名?什么是数字证书?密码学知识?
- 你们在哪里,在做什么?
- 什么是directx 显卡知识 zol术语
- 【转载】知识普及:天煞的HTML5到底是个什么东西