数据结构——二叉树的基础练习题(单值二叉树,翻转二叉树,相同的树,对称二叉树,另一颗子树,二叉树的前序遍历)
Posted sjp11
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数据结构——二叉树的基础练习题(单值二叉树,翻转二叉树,相同的树,对称二叉树,另一颗子树,二叉树的前序遍历)相关的知识,希望对你有一定的参考价值。
前言
下面这些题目是在leecode上摘选的,这些题目有利于我们更深入理解二叉树,用c语言实现。
1.单值二叉树
题目链接: 单值二叉树.
思路:
遍历二叉树的每一个节点,并且让每个节点都和根节点进行比对,如果出现不同,则不是单值二叉树。
分析:
2.翻转二叉树
题目:
思路:
翻转每一颗子树的左右节点
分析:
3.相同的树
题目链接: 相同的树.
题目
解题思路:
先对比根节点是否相同,再对比两颗子树
4.对称二叉树
题目链接: 对称二叉树.
———————————————————————————————————————————————
解题思路:
判断一颗树是否对称,需要判断先判断左右孩子是否对称相等,还需要判断左孩子的左子树与右孩子的右子树是否相等,左孩子的右子树与右孩子的左子树是否相等,如果都相等,则该树为对称二叉树。
答案:
代码分析:
5.另一颗子树
题目链接: 另一颗子树.
解题思路:
判断A树是否为B树的子树,需要判断A树是否与B树中的某一子树相同,这时候需要用相同的树的函数,然后遍历B树中每一个节点,然后与A树进行比较,如果A树与B树中的某一个节点判断为相同的树,则证明A为B的子树。
代码解析:
6.二叉树的前序遍历
题目链接: 二叉树的前序遍历.
题目思路:
Q此题要保存节点,所以需要先获取节点个数,然后进行前序遍历,保存每一个节点值。
代码分析:
以上是关于数据结构——二叉树的基础练习题(单值二叉树,翻转二叉树,相同的树,对称二叉树,另一颗子树,二叉树的前序遍历)的主要内容,如果未能解决你的问题,请参考以下文章