当前位置: 首页 > news >正文

深圳代做网站后台百度影音在线电影

深圳代做网站后台,百度影音在线电影,音乐排行榜网页设计作业,盐城网站建设培训各个部分题目的代码题解都在我往日的二叉树的博客中。 (day14到day22) 目录 二叉树理论基础二叉树的遍历方式深度优先遍历广度优先遍历 求二叉树的属性二叉树的修改与制造求二叉搜索树的属性二叉树公共最先问题二叉搜索树的修改与构造总结 二叉树理论基础 二叉树的理论基础参…

各个部分题目的代码题解都在我往日的二叉树的博客中。
(day14到day22)

目录

  • 二叉树理论基础
  • 二叉树的遍历方式
    • 深度优先遍历
    • 广度优先遍历
  • 求二叉树的属性
  • 二叉树的修改与制造
  • 求二叉搜索树的属性
  • 二叉树公共最先问题
  • 二叉搜索树的修改与构造
  • 总结

二叉树理论基础

二叉树的理论基础参考我的朱提第一篇二叉树的文章:
链接: day14
得注意各种二叉树的种类、存储方式、遍历方式、定义方式。

二叉树的遍历方式

深度优先遍历

链接: day14
二叉树前中后序的递归三部曲
二叉树前中后序的迭代法
二叉树前中后序的迭代法的统一形式

广度优先遍历

链接: day15
二叉树的层序遍历

求二叉树的属性

  • 二叉树:是否对称
    递归:后序,比较的是根节点的左子树与右子树是不是相互翻转
    迭代:使用队列/栈将两个节点顺序放入容器中进行比较
  • 二叉树:求最大深度
    递归:后序,求根节点最大高度就是最大深度,通过递归函数的返回值做计算树的高度
    迭代:层序遍历
  • 二叉树:求最小深度
    递归:后序,求根节点最小高度就是最小深度,注意最小深度的定义
    迭代:层序遍历
  • 二叉树:求有多少个节点
    递归:后序,通过递归函数的返回值计算节点数量
    迭代:层序遍历
  • 二叉树:是否平衡
    递归:后序,注意后序求高度和前序求深度,递归过程判断高度差
    迭代:效率很低,不推荐
  • 二叉树:找所有路径
    递归:前序,方便让父节点指向子节点,涉及回溯处理根节点到叶子的所有路径
    迭代:一个栈模拟递归,一个栈来存放对应的遍历路径
  • 二叉树:递归中如何隐藏着回溯
    详解二叉树:找所有路径 中递归如何隐藏着回溯
  • 二叉树:求左叶子之和
    递归:后序,必须三层约束条件,才能判断是否是左叶子。
    迭代:直接模拟后序遍历
  • 二叉树:求左下角的值
    递归:顺序无所谓,优先左孩子搜索,同时找深度最大的叶子节点。
    迭代:层序遍历找最后一行最左边
  • 二叉树:求路径总和
    递归:顺序无所谓,递归函数返回值为bool类型是为了搜索一条边,没有返回值是搜索整棵树。
    迭代:栈里元素不仅要记录节点指针,还要记录从头结点到该节点的路径数值总和

二叉树的修改与制造

  • 翻转二叉树
    递归:前序,交换左右孩子
    迭代:直接模拟前序遍历
  • 构造二叉树
    递归:前序,重点在于找分割点,分左右区间构造
    迭代:比较复杂,意义不大
  • 构造最大的二叉树
    递归:前序,分割点为数组最大值,分左右区间构造
    迭代:比较复杂,意义不大
  • 合并两个二叉树
    递归:前序,同时操作两个树的节点,注意合并的规则
    迭代:使用队列,类似层序遍历

求二叉搜索树的属性

  • 二叉搜索树中的搜索
    递归:二叉搜索树的递归是有方向的
    迭代:因为有方向,所以迭代法很简单
  • 是不是二叉搜索树
    递归:中序,相当于变成了判断一个序列是不是递增的
    迭代:模拟中序,逻辑相同
  • 求二叉搜索树的最小绝对差
    递归:中序,双指针操作
    迭代:模拟中序,逻辑相同
  • 求二叉搜索树的众数
    递归:中序,清空结果集的技巧,遍历一遍便可求众数集合
  • 二叉搜索树转成累加树
    递归:中序,双指针操作累加
    迭代:模拟中序,逻辑相同

二叉树公共最先问题

  • 二叉树的公共祖先问题
    递归:后序,回溯,找到左子树出现目标值,右子树节点目标值的节点。
    迭代:不适合模拟回溯
  • 二叉搜索树的公共祖先问题
    递归:顺序无所谓,如果节点的数值在目标区间就是最近公共祖先
    迭代:按序遍历

二叉搜索树的修改与构造

  • 二叉搜索树中的插入操作
    递归:顺序无所谓,通过递归函数返回值添加节点
    迭代:按序遍历,需要记录插入父节点,这样才能做插入操作
  • 二叉搜索树中的删除操作
    递归:前序,想清楚删除非叶子节点的情况
    迭代:有序遍历,较复杂
    修剪二叉搜索树
    递归:前序,通过递归函数返回值删除节点
    迭代:有序遍历,较复杂
  • 构造二叉搜索树
    递归:前序,数组中间节点分割
    迭代:较复杂,通过三个队列来模拟

总结

涉及到二叉树的构造,无论普通二叉树还是二叉搜索树一定前序,都是先构造中节点。

求普通二叉树的属性,一般是后序,一般要通过递归函数的返回值做计算。

求二叉搜索树的属性,一定是中序。

注意在普通二叉树的属性中,我用的是一般为后序,例如单纯求深度就用前序,【二叉树:找所有路径】也用了前序,这是为了方便让父节点指向子节点。

所以求普通二叉树的属性还是要具体问题具体分析。

参考文档:

链接: 二叉树总结

http://www.hengruixuexiao.com/news/15123.html

相关文章:

  • 怎么做试玩平台推广网站百搜网络科技有限公司
  • 网件路由器重置seo助手
  • wordpress全局透明主题下载百度seo查询
  • 江苏做网站xlec长沙网站制作主要公司
  • 武汉彩票网站开发公司百度快照如何优化
  • wordpress所有页面都显示不出来seo精灵
  • 网站建设规划书300字郑州seo软件
  • 做公司网站要多少钱seo关键词排名点击工具
  • 网站开发国内现状韩国日本比分
  • 专业设计网站排行榜网络舆情监测平台
  • 上海嘉定网站建设百度营销推广靠谱吗
  • 企业网站设计制作服务上海疫情又要爆发了
  • wap网站 教程seo排名优化怎样
  • 建设银行ETC的网站是哪个友情链接交换方式有哪些
  • 专门做潮搭的网站起飞页自助建站平台
  • 淄博网站设计制作百度推广是什么
  • 最好的网站建设价格友链交易交易平台
  • 在线教学网站开发seo是什么姓
  • 做idc销售怎样建网站千锋教育
  • 成都企业网站建设哪家专业seo优化需要多少钱
  • 网站维护技术企业品牌营销推广
  • 网站制作教程 pdf下载出词
  • wordpress特色图像代码昆明seo建站
  • 2017自己做网站的趋势如何模板建站
  • 泰安网站建设作用百度平台推广联系方式
  • 05网课时作业答案windows7优化大师
  • 微商城网站建设多少钱中国今天最新军事新闻
  • wordpress adsense主题排名优化软件点击
  • wordpress整站备份插件小网站搜什么关键词好
  • 怎么制作图片文件夹seo线下培训班