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

婚礼做的好的婚庆公司网站写文章免费的软件

婚礼做的好的婚庆公司网站,写文章免费的软件,网站建设 宣传,暑假旅游最适合的城市https://leetcode.cn/problems/diameter-of-binary-tree/description/?envTypestudy-plan-v2&envIdtop-100-liked 题目描述:给一个二叉树,返回二叉树直径最大值。直径指的是二叉树中任意一个结点到另外一个结点产生路径的长度。而长度由边来代表。…

https://leetcode.cn/problems/diameter-of-binary-tree/description/?envType=study-plan-v2&envId=top-100-liked

题目描述:给一个二叉树,返回二叉树直径最大值。直径指的是二叉树中任意一个结点到另外一个结点产生路径的长度。而长度由边来代表。

思路

  1. 最简单的切入点是,既然要找最大值,那么这两个结点一定是叶子,根据贪心法则,如果当前区间边界不是叶子,就说明它一定有孩子结点,那他一定可以将区间拓展到他的孩子结点。所以最终的答案区间边界一定是叶子结点
  2. 既然答案一定是叶子结点,那么孩子结点连城路径一定会经过非叶子结点,所以遍历思路就出来了。遍历非叶子结点。
  3. 而答案路径很好表示,假设你选定当前这个非叶子结点作为路径通路。那么经过这个结点的最大直径,一定是左子树高度加上右子树高度。

根据上面结果整体解题思路以及大概的代码逻辑都出来了。
就是遍历一下非叶子结点,算一下左右两边子树高度,记录最大值就好了。
然后编码实际上用计算高度的递归就好了

/*** Definition for a binary tree node.* type TreeNode struct {*     Val int*     Left *TreeNode*     Right *TreeNode* }*/func ans(root *TreeNode, res *int) int{if root == nil {return 0}left := ans(root.Left, res)right := ans(root.Right, res)tem := left + rightif tem > *res {*res = tem}if left < right {return right + 1}return left + 1
}func diameterOfBinaryTree(root *TreeNode) int {var a = 0ans(root, &a)return a
}
http://www.yayakq.cn/news/901739/

相关文章:

  • 学网站建设需要用哪几个软件什么叫网站
  • 甘肃省建设厅网站网站建设实施过程
  • 塑料机械怎么做网站网站开发工程师项目经验怎么写
  • 松江营销型网站建设公司优质网站建设
  • 网站显示建设中过年wordpress主机
  • 兴义做网站湖南网站制作哪家专业
  • 高县住房和城乡建设部网站泡棉制品东莞网站建设
  • 企业网站用什么域名企业网络营销推广方案
  • 手机网站开发价格网站域名购买
  • 怎么做网站接家纺订单惠州市
  • 做公司网站应准备什么材料模板王字体网
  • 网站建设 麓谷wordpress cros
  • 一键生成logo免费在线网页清远市企业网站seo联系方式
  • 牙科医院网站推广方案wordpress国产定制主题
  • 网站怎么做谷歌权重怎么做存储网站
  • 网站建设后期修改网站支付端口
  • 建站快车代理平台系统中国产品网注册
  • 社区门户网站规范化建设珠海制作企业宣传片
  • muse做的网站怎么样wordpress wp_cumulus_insert(
  • 电子商务网站建设与维护实训报告青岛市住房和城乡建设局官方网站
  • 网站二级栏目石家庄网络公司哪家正规
  • 建企业网站需要多少钱珠江网站建设
  • 苏宁易购网站建设的不足之处湖南郴州市有几个县
  • 整屏幕滑动的网站wordpress如何安装网站主题
  • 网站一般在哪建设如何做全景素材网站
  • 网站新闻列表页面代码阜新旅游网站建设
  • 驻马店营销型网站建设优化推广网站建设与规划实验心得
  • 网站开发是哪个职位蓝海网站建设
  • 网站怎么加留言青岛网站建设找
  • 广州旅游网站建设设计永久免费网站申请注册