10二叉树


概念

二叉树的性质:

        性质1:

        性质2:

        性质3:

真二叉树

     概念

满二叉树

    概念

完全二叉树

        概念

        特点

        性质

        真题加深

代码是否为完全二叉树

        概述

        代码

二叉树的遍历

        递归-前序遍历

        递归-中序遍历

        递归-后序遍历

        层序遍历

        设计一个遍历接口

        增强遍历接口

        遍历的应用

                      概述
                      前序遍历
                                  打印树状结构展示

二叉树的高度

  递归搞定

  非递归—迭代—层序遍历

根据遍历结果重构二叉树

           前序+中序

           中序+后序

           前序+后序:结果可能不唯一

           前,中,后 图片参考

前驱节点

         概述

        上代码

后继节点

         概述

        上代码

二叉搜索树

      概述

       比较器

       遍历器

       二叉搜索树节点

       属性和常见方法

       查看某个元素是否存在contains()

       增加方法add()

       删除remove()

                               概述思路
                               代码

        遍历

        最终代码

代码重构:

二叉树作业

二叉树应用练习

           翻转二叉树

-------------------------------------------------------------------------------------------------------------------------------

https://leetcode-cn.com/problems/maximum-depth-of-n-ary-tree/

? 二叉树展开为链表

?https://leetcode-cn.com/problems/flatten-binary-tree-to-linked-list/

? 从中序与后序遍历序列构造二叉树

?https://leetcode-cn.com/problems/construct-binary-tree-from-inorder-and-postorder-traversal/

? 从前序与中序遍历序列构造二叉树

?https://leetcode-cn.com/problems/construct-binary-tree-from-preorder-and-inorder-traversal/

? 根据前序和后序遍历构造二叉树

?https://leetcode-cn.com/problems/construct-binary-tree-from-preorder-and-postorder-traversal/

? 对称二叉树

?https://leetcode-cn.com/problems/symmetric-tree/

二叉树应用练习

翻转二叉树

Letcode:2226

思路:遍历二叉树  将每一个节点的左右子树进行交换

前序遍历

先访问自己进行交换  然后访问左右子树  

后序遍历

先访问它的左右  然后再访问自己   然后进行交换

中序遍历

层序遍历

总结:就是遍历  将每个节点的左右子树进行交换