美文网首页二叉树之下
剑指offer中关于二叉树题目的总结

剑指offer中关于二叉树题目的总结

作者: dreamsfuture | 来源:发表于2018-03-16 07:39 被阅读35次

关于二叉树的问题,也就是涉及二叉树的四种遍历算法以及基本的删除、插入等操作

中序遍历和前序遍历/后序遍历的结合

题目7:重建二叉树

层序遍历

题目32:①从上到下打印二叉树 ②分行打印二叉树 ③之字形打印二叉树
分析:层序遍历按行处理,所以利用队列的先入先出可以完成此操作

前序遍历

题目26:树的子结构
题目27:二叉树的镜像
题目28:对称二叉树
题目34:二叉树中和为某个值的路径
题目37:序列化二叉树
分析:前序遍历是先根节点root,符合情况先执行器得到我们需要的结果,

中序遍历

题目8:二叉树的下一个节点
题目54:二叉搜索树的第K大节点
分析:计算搜索树的第K大的节点,有顺序,而二叉搜索树是根节点大于左子节点,小于右子节点,所以利用中序遍历可以得到一个顺序递增的序列。只要遍历到第k个节点就是结果。

后序遍历

题目33:二叉树的后序遍历序列
题目55:①二叉树的深度 ②平衡二叉树
分析:从root开始计算一直到某个叶子节点才能得到此路径的深度,而计算一棵树的深度,只有计算完root左右子树的深度才可以,也就是说执行器是在左右子树递归之后得到,所以需要依次递归计算直到叶子。

递归中栈变量的问题

若是自己定义的变量传入到递归函数中,对变量进行的操作如果不删除,在返回到递归父函数里是保留操作的数据,而编译器自动调用的栈里使用的变量在跳出此递归函数时便从栈中删除了,所以数据信息回到了调用函数时的数据,与递归调用的子函数中处理的变量不同。

递归中的细节

递归函数返回的节点可以认为是null来处理,因为已经走了一遍

执行器的位置决定了前中后序遍历

相关文章

  • 全网最全剑指offer题目解答

    【剑指offer】Java版代码(完整版) 【剑指offer】1-10题 【剑指offer】11-20题 【剑指o...

  • 剑指offer中关于二叉树题目的总结

    关于二叉树的问题,也就是涉及二叉树的四种遍历算法以及基本的删除、插入等操作 中序遍历和前序遍历/后序遍历的结合 题...

  • 剑指Offer--(5)重建二叉树

    title: 剑指Offer--(5)重建二叉树 categories: 算法与数据结构 tags: 数据结构 题...

  • 剑指offer——JAVA版

    Array 数组题目汇总[18题] [剑指offer] 二维数组中的查找 [剑指offer] 旋转数组的最小数字 ...

  • swift算法总结

    剑指offer 34题 二叉树中为某一值的路劲 11:30 参数: 节点思路:定义:当前的值, 期望的和 , 当...

  • go 重建二叉树

    这是剑指offer的一道题。 输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树。假设输入的前序遍历和中序遍...

  • 根据前序遍历和中序遍历重建二叉树

    此题为剑指offer的第7题 就是根据二叉树的前序和中序遍历的序列来构造二叉树并以层次遍历的形式输出。考察了二叉树...

  • 树的子结构

    《剑指offer》刷题笔记。如有更好解法,欢迎留言。 关键字:二叉树 递归 题目描述: 输入两棵二叉树A,B,判断...

  • 2019-06-26 文稿

    剑指 offer 总结 重要的几点: 看清题目 对象初始化 智商全程在线 优先处理边界条件 剑指offer中的大多...

  • 重建二叉树

    上牛客网做了一道剑指offer的算法题 重建二叉树 输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树。假设...

网友评论

    本文标题:剑指offer中关于二叉树题目的总结

    本文链接:https://www.haomeiwen.com/subject/qcykqftx.html