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

把网站做成手机版小米手机的网站架构

把网站做成手机版,小米手机的网站架构,广告设计与制作基础知识,php 移动网站开发一、摘要 嗨喽呀大家#xff0c;leetcode每日一题又和大家见面啦#xff0c;今天要讲的是104.二叉树的最大深度#xff0c;思路互相学习#xff0c;有什么不足的地方欢迎指正#xff01;好啦让我们开始吧#xff01;#xff01;#xff01; 二、题目简介 给定一个二…一、摘要 嗨喽呀大家leetcode每日一题又和大家见面啦今天要讲的是104.二叉树的最大深度思路互相学习有什么不足的地方欢迎指正好啦让我们开始吧 二、题目简介 给定一个二叉树 root 返回其最大深度。 二叉树的 最大深度 是指从根节点到最远叶子节点的最长路径上的节点数。 示例 1 输入root [3,9,20,null,null,15,7] 输出3示例 2 输入root [1,null,2] 输出2提示 树中节点的数量在 [0, 104] 区间内。-100 Node.val 100 三、思路详解 针对这道题我先补充一个递归的图像能够帮我更好理解它递归的过程。图画由于是手画有点潦草 1. 递归法深度优先搜索 递归法是求解二叉树问题的常用方法。我们可以使用深度优先搜索DFS来遍历二叉树找到从根节点到最远叶子节点的最长路径。 思路 如果当前节点为空返回深度 0。 递归计算左子树和右子树的最大深度。 当前节点的最大深度等于左子树和右子树的最大深度中的较大值加 1。 代码实现 int maxDepth(struct TreeNode* root) {if (root NULL) return 0; // 空节点的深度为0// 递归计算左子树和右子树的最大深度int leftDepth maxDepth(root-left);int rightDepth maxDepth(root-right);// 当前节点的最大深度为左右子树最大深度的较大值加1return (leftDepth rightDepth ? leftDepth : rightDepth) 1; } 2. 迭代法广度优先搜索 迭代法使用队列来实现广度优先搜索BFS可以避免递归的深度限制问题。 思路 使用一个队列来存储待访问的节点每个节点附带其深度信息。 从根节点开始将其深度设为 1。 遍历队列中的每个节点更新最大深度。 将左右子节点如果存在加入队列深度加 1。 代码实现 int maxDepth(struct TreeNode* root) {if (root NULL) return 0; // 空树的最大深度为0struct TreeNode* queue[10000]; // 队列假设最多10000个节点int depth[10000]; // 每个节点的深度int front 0, rear 0;int maxDepth 0;queue[rear] root;depth[rear] 1;rear;while (front rear) {struct TreeNode* node queue[front];int currentDepth depth[front];front;maxDepth (currentDepth maxDepth) ? currentDepth : maxDepth;if (node-left) {queue[rear] node-left;depth[rear] currentDepth 1;rear;}if (node-right) {queue[rear] node-right;depth[rear] currentDepth 1;rear;}}return maxDepth; } 3. 前中后序遍历 思路 后序遍历先计算左子树和右子树的最大深度再处理当前节点。 前序遍历先处理当前节点再计算左子树和右子树的最大深度。 中序遍历先计算左子树的最大深度处理当前节点再计算右子树的最大深度。 在计算最大深度时这些遍历顺序并没有实际影响因为左右子树的最大深度是独立计算的最终结果只取决于左右子树的最大深度。 二叉树的最大深度是从根节点到最远叶子节点的最长路径上的节点数。 无论采用哪种遍历顺序前序、中序、后序最终都需要计算左子树和右子树的最大深度并取较大值加 1。 代码实现 int maxDepth(struct TreeNode* root) {if (root NULL) return 0; // 空节点的深度为0// 递归计算左子树和右子树的最大深度int leftDepth maxDepth(root-left);int rightDepth maxDepth(root-right);// 当前节点的最大深度为左右子树最大深度的较大值加1return (leftDepth rightDepth ? leftDepth : rightDepth) 1; } 好啦其实这类型的题目大致思路都是一样的看完这些思路之后可以针对性的多做几道练习今天的讲解就到这里啦。我们明天见
http://www.dnsts.com.cn/news/221878.html

相关文章:

  • 文昌网站建设全包wordpress查询量过大
  • 网站设计器大型网站常见问题
  • 有哪些学校的网站做的好网站标题和描述优化
  • 自己做网站接入微信和支付宝3d虚拟人物制作软件
  • 聚美优品网站建设的特点wordpress的简单介绍
  • 个人主页的英文湘潭有实力seo优化
  • 站长推广工具我想做卖鱼苗网站怎样做
  • 响应式网站开发步骤怎么开发属于自己的app软件
  • 深圳福田特价网站建设免费行情网站大全
  • 网站推广在哪好买个网站需要多少钱
  • 网站收录查询接口外贸网站怎么做促销
  • 福州短视频seo机会seo引擎搜索入口
  • 高端网站设计高端网站制作tk域名官方网站
  • ps 做网站切图网赌赢了钱被网站黑了需要怎么做
  • 网站被k的原因flash网站优缺点
  • ps做素材下载网站12个 网站模板 管理
  • 如何查看网站页面大小广州网站开发 英诺科技
  • p2vr做的网站上传网站自适应布局 html5
  • access数据库网站分析网站设计对网站搜索引擎友好性的影响
  • 深圳网站建设高端设计宁波seo快速优化平台有哪些
  • 装修公司网站模板下载erp软件开发平台
  • 重庆网站建设首选卓光盟族网站建设
  • 产品推广网站设计ui设计界面效果图
  • 网站建设简介一站式建设网站
  • 如何规划建设一个企业网站网站备案经验
  • 如何做挂qq的网站手机网站建设知识
  • 宣武青岛网站建设wordpress 用户 评论
  • 矿区网站建设网站 打赏功能
  • 太原市建设路小学网站网站建设合同免费下载
  • 沙元浦做网站的公司大连网站开发企业