本文介绍: 先找到根,然后开始按对应的序遍历,如果左右中存在不是叶子节点,则将该节点当作根节点继续按对应的序来遍历。寻找某个节点的父节点时,需要遍历整个数,依次判断是否某个节点的子节点为对应的节点。对应的二叉树即对应的孩子兄弟法表示的树且该二叉树的先序遍历与原树的先根遍历相同。对应的二叉树即对应的孩子兄弟法表示的树且该二叉树的中序遍历与原树的后根遍历相同。通过计算出节点对应左孩子或右孩子的节点数然后判断是否在n个节点的范围内。所以B的右孩子的遍历下去的所有右孩子为原来A节点的孩子。存在指向孩子链表的指针的元素。
二叉树的存储结构
二叉树的顺序存储
通过计算出节点对应左孩子或右孩子的节点数然后判断是否在n个节点的范围内
当非完全二叉树时不适用了,如下图,节点与编号不对应了
所以,还是按照原来的对应图来存储。判断节点存不存在通过判断是否空的布尔值即可
弊端:会浪费部分节点
二叉树的链式存储
小结
二叉树的先中后序遍历
例题
小结
二叉树的层次遍历
小结
由遍历序列构造二叉树
一个遍历序列即使给定了前中后序,也不能确定该二叉树的形态
可以确定的序列组合
前序+中序
后序+中序
层序+中序
小结
若前序,后序,层序两两组合能吗?
树的存储结构
总览
树的逻辑结构
顺序存储(双亲表示法)
顺序+链式存储(孩子表示法)
链式存储(孩子兄弟表示法)
森林和二叉树的转换(孩子兄弟表示法)
小结
树和森林的遍历
树的先根遍历
树的后根遍历
树的层次遍历
森林的先序遍历
森林的中序遍历
小结
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。