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

专业的电商网站建设公司网络营销乐云seo

专业的电商网站建设公司,网络营销乐云seo,跨平台软件开发工具,微模板网站建设目录 题目描述#xff1a;543. 二叉树的直径#xff08;简单#xff09;题目接口解题思路代码 PS: 题目描述#xff1a;543. 二叉树的直径#xff08;简单#xff09; 给你一棵二叉树的根节点#xff0c;返回该树的 直径 。 二叉树的 直径 是指树中任意两个节点之间最… 目录 题目描述543. 二叉树的直径简单题目接口解题思路代码 PS: 题目描述543. 二叉树的直径简单 给你一棵二叉树的根节点返回该树的 直径 。 二叉树的 直径 是指树中任意两个节点之间最长路径的 长度 。这条路径可能经过也可能不经过根节点 root 。 两节点之间路径的 长度 由它们之间边数表示。 LeetCode做题链接LeetCode-两数之和 示例 1 输入root [1,2,3,4,5] 输出3 解释3 取路径 [4,2,1,3] 或 [5,2,1,3] 的长度。示例 2 输入root [1,2] 输出1提示 树中节点数目在范围 [1, 104] 内 -100 Node.val 100题目接口 /*** Definition for a binary tree node.* public class TreeNode {* int val;* TreeNode left;* TreeNode right;* TreeNode() {}* TreeNode(int val) { this.val val; }* TreeNode(int val, TreeNode left, TreeNode right) {* this.val val;* this.left left;* this.right right;* }* }*/ class Solution {public int diameterOfBinaryTree(TreeNode root) {} }解题思路 递归 定义一个全局变量ans用来存储计算过程中的最大直径。 定义一个方法diameterOfBinaryTree(TreeNode root)这个方法是求解二叉树直径的主方法。如果传入的根节点为空那么直接返回0表示没有节点直径为0。否则调用maxDepth(root)方法求出以当前节点为根的子树的最大深度然后用这个深度减去1因为直径需要经过根节点得到左子树和右子树的最大深度之和再减去2因为直径需要经过两个子节点就得到了以当前节点为根的子树的直径。最后用全局变量ans更新最大直径。 定义一个方法maxDepth(TreeNode root)这个方法是递归求解以当前节点为根的子树的最大深度。如果传入的根节点为空那么直接返回0表示没有节点深度为0。否则递归求解左子树和右子树的最大深度然后取两者中的较大值加1作为当前节点的深度。同时用这个深度更新全局变量ans。 在主方法中首先检查根节点是否为空如果为空则直接返回0。然后调用maxDepth(root)方法求出以当前节点为根的子树的最大深度并用这个深度更新全局变量ans。最后返回ans即为整棵树的直径。 代码 /*** Definition for a binary tree node.* public class TreeNode {* int val;* TreeNode left;* TreeNode right;* TreeNode() {}* TreeNode(int val) { this.val val; }* TreeNode(int val, TreeNode left, TreeNode right) {* this.val val;* this.left left;* this.right right;* }* }*/ class Solution {// 定义一个全局变量用来存储计算过程中的最大直径private int ans;// 主方法求解二叉树的直径public int diameterOfBinaryTree(TreeNode root) {// 如果根节点为空返回0if(root null){return 0;}// 求以当前节点为根的子树的最大深度maxDepth(root);// 返回最大直径return ans;}// 递归方法求以当前节点为根的子树的最大深度public int maxDepth(TreeNode root) {// 如果根节点为空返回0if(root null){return 0;}// 递归求解左子树和右子树的最大深度然后取两者中的较大值加1作为当前节点的深度int left maxDepth(root.left) 1;int right maxDepth(root.right) 1;// 用当前节点的深度更新全局变量ansans Math.max(ans, left right - 2);// 返回当前节点的深度return Math.max(left, right);} }成功 PS: 感谢您的阅读如果您觉得本篇文章对您有所帮助请给予博主一个赞喔~
http://www.zqtcl.cn/news/44321/

相关文章:

  • 河北网站建设电话西峡微网站建设
  • 网站做收录要多少长时间遵义网嘉科技有限公司
  • 酷站瑞安网站开发
  • 彩票网站是怎么做的app地推网
  • 佛山出格建站自助业务网站系统
  • 网站建设速成成全视频免费观看在线看搜索
  • 福建省法冶建设知识有奖网站网站建设分为几个阶段
  • 网站建设的基本因素是什么成都十大互联网公司
  • 手机网站建设报价表单页主题 wordpress
  • 商会网站建设招标方案网络营销的技巧有哪些
  • 网站开发费用构成成都住房和城乡建设部网站查询
  • 网站建设与管理实用教程店面设计图片
  • 北京十大室内设计工作室企业seo优化方案
  • 灰系网站深圳龙华区是富人区吗
  • 微信网站的优势个人网页制作模板怎么做
  • 网站建设话语绿色国外网站
  • 网站开发业务流程网站建设如果登录失败
  • 网站的首页设计中国软件邮箱登录入口
  • 网站做电商资质吗深圳品牌网站制作推荐
  • 连江厦门网站建设公司北京工装装修公司排名前十
  • 淘宝客网站主题南昌集团制作网站设计
  • 做网站如何调字体格式网站开发人员应具备什么素质
  • 网站关键词优化遇到的情况和解决方法网页设计和网站建设书
  • 2014年网站设计趋势惠州seo网络推广
  • 甘谷县建设局网站网站建设保密协议
  • 上海网站建设网页制合肥建设工程质量监督局网站
  • 库尔勒北京网站建设wordpress文章新窗口打开
  • 国家公示网营业执照南昌百度推广优化排名
  • 网站前台后台模板网络营销是什么工作职位
  • 在哪个网站开发国外客户滨湖网站建设