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

旅游宣传推广方案武汉seo百度

旅游宣传推广方案,武汉seo百度,世界十大网络公司排名,网站打开的速度特别慢的原因二叉树的理论基础 代码随想录 (programmercarl.com):二叉树的种类、存储方式、遍历方式、定义方式 二叉树的遍历方式 深度优先遍历 代码随想录阅读笔记-二叉树【递归遍历】-CSDN博客:递归三部曲初次亮相代码随想录阅读笔记-二叉树【迭代遍历】-CSDN博…

二叉树的理论基础

  • 代码随想录 (programmercarl.com):二叉树的种类、存储方式、遍历方式、定义方式

二叉树的遍历方式

  • 深度优先遍历
    • 代码随想录阅读笔记-二叉树【递归遍历】-CSDN博客:递归三部曲初次亮相
    • 代码随想录阅读笔记-二叉树【迭代遍历】-CSDN博客:通过栈模拟递归
    • 代码随想录阅读笔记-二叉树【统一迭代法】-CSDN博客
  • 广度优先遍历
    • 代码随想录阅读笔记-二叉树【层序遍历】-CSDN博客:通过队列模拟

求二叉树的属性

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

二叉树的修改与构造

  • 代码随想录阅读笔记-二叉树【翻转二叉树】-CSDN博客
    • 递归:前序,交换左右孩子
    • 迭代:直接模拟前序遍历
  • 代码随想录-二叉树【从中序与后序遍历序列构造二叉树】-CSDN博客
    • 递归:前序,重点在于找分割点,分左右区间构造
    • 迭代:比较复杂,意义不大
  • 代码随想录阅读笔记-二叉树【最大二叉树】-CSDN博客
    • 递归:前序,分割点为数组最大值,分左右区间构造
    • 迭代:比较复杂,意义不大
  • 代码随想录阅读笔记-二叉树【合并二叉树】-CSDN博客
    • 递归:前序,同时操作两个树的节点,注意合并的规则
    • 迭代:使用队列,类似层序遍历

求二叉搜索树的属性

  • 代码随想录阅读笔记-二叉树【二叉搜索树中的搜索】-CSDN博客

    • 递归:二叉搜索树的递归是有方向的
    • 迭代:因为有方向,所以迭代法很简单
  • 代码随想录阅读笔记-二叉树【验证二叉搜索树】-CSDN博客

    • 递归:中序,相当于变成了判断一个序列是不是递增的
    • 迭代:模拟中序,逻辑相同
  • 代码随想录阅读笔记-二叉树【二叉搜索树的最小绝对差】-CSDN博客

    • 递归:中序,双指针操作
    • 迭代:模拟中序,逻辑相同
  • 代码随想录阅读笔记-二叉树【二叉搜索树中的众数】-CSDN博客

    • 递归:中序,清空结果集的技巧,遍历一遍便可求众数集合

  • 代码随想录阅读笔记-二叉树【二叉搜索树转换为累加树】-CSDN博客
    • 递归:中序,双指针操作累加

    • 迭代:模拟中序,逻辑相同

二叉树公共祖先问题

  • 代码随想录阅读笔记-二叉树【二叉树的最近公共祖先】-CSDN博客
    • 递归:后序,回溯,找到左子树出现目标值,右子树节点目标值的节点。
    • 迭代:不适合模拟回溯
  • 代码随想录阅读笔记-二叉树【二叉搜索树的最近公共祖先】-CSDN博客
    • 递归:顺序无所谓,如果节点的数值在目标区间就是最近公共祖先
    • 迭代:按序遍历

二叉搜索树的修改与构造

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

总结

在二叉树题目选择什么遍历顺序是不少同学头疼的事情,我们做了这么多二叉树的题目了,给大家大体分分类

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

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

  • 求二叉搜索树的属性,一定是中序了,要不白瞎了有序性了。

注意在普通二叉树的属性中,我用的是一般为后序,例如单纯求深度就用前序,代码随想录阅读笔记-二叉树【二叉树的所有路径】-CSDN博客也用了前序,这是为了方便让父节点指向子节点。

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

二叉树专题汇聚为一张图:

这个图是从 代码随想录知识星球引用,总结的非常好,分享给大家。

http://www.hkea.cn/news/162658/

相关文章:

  • 做360网站优化快推广普通话宣传语手抄报
  • 动态网站开发语言有哪些大学生创新创业大赛
  • 关键词推广公司网站网络排名优化方法
  • 福州移动网站建设网络营销推广工具有哪些
  • win2008sr怎么用iis做网站国外网站加速
  • 合肥++网站建设磐石网站seo
  • 万网主机怎么上传网站如何在百度上投放广告
  • 做网站时如何给文字做超链接全球疫情最新数据消息
  • 四川省住建厅官方网站3分钟搞定网站seo优化外链建设
  • 做网站阳泉巨量千川广告投放平台
  • 温岭哪里有做网站的如何自制网站
  • 知道创于 wordpress搜索引擎优化宝典
  • 乌兰县wap网站建设公司有效获客的六大渠道
  • 微信网站开发教程视频教程百度一下主页官网
  • 网站开发专业前景关键词挖掘排名
  • 网站开发属于什么职位类别seo查询站长工具
  • wordpress postmetaseoul national university
  • 商务网站的主要存在形式杭州百度快照优化公司
  • 个人备案网站做购物网站可以不班级优化大师免费下载电脑版
  • 贸易网站建设互联网广告代理加盟
  • 深圳网站建设网络公司河北关键词排名推广
  • 在工商网上怎么注册公司seo优化博客
  • 免费的小程序怎么赚钱历下区百度seo
  • 河北石家庄最新疫情最新消息优化防疫政策
  • 一站式做网站哪家强新闻小学生摘抄
  • 江西南昌网站建设公司哪家好谷歌google 官网下载
  • 公司网站用什么开发百度指数怎么用
  • 建站主机 wordpress济南网站万词优化
  • 哈尔滨app开发seo自学网官网
  • 网站答辩ppt怎么做全网关键词云在哪里看