6.3 数和森林与二叉树的转换
6.3.1树与二叉树的转换
二叉树与树的转换和还原根据书上的图片可以明了的了解转换过程。
树转化为二叉树:
二叉树还原为树:
遍历对应关系:
- 树的先序遍历对应二叉树的先序遍历;
- 树的后序遍历对应二叉树的中序遍历;
- 树的层序遍历不对应二叉树的任何遍历;
6.3.2森林与二叉树的转换
同样可以通过附图直观的了解。
森林转化为二叉树:
二叉树还原为森林:
森林的遍历:
- 先序遍历:
如果森林为空则直接返回,否则:
第一,访问森林中第一颗树的根结点;
第二,先序遍历第一棵子树中根节点的子树森林;
第三,先序遍历除第一棵子树之后剩余的树构成的森林。 - 中序遍历:
如果森林为空则直接返回,否则:
第一,中序遍历第一棵子树中根节点的子树森林;
第二,访问森林中第一颗树的根结点;
第三,中序遍历除第一棵子树之后剩余的树构成的森林。
遍历对应关系:
- 森林的先序遍历对应二叉树的先序遍历;
- 森林的中序遍历对应二叉树的中序遍历。
今天专业课就学了这些,前面的那些我会在二轮复习边复习边更新,就当是自己做的云笔记了,如果有错误的地方希望各位大牛和老师们指出,也希望可以帮助到各位学习数据结构的同学,如果有问题欢迎私信或评论一起讨论学习!