在最长的距离二叉树结点

在最长的距离二叉树结点

大家好,又见面了,我是全栈君,今天给大家准备了Idea注册码。

分为两:①当后最长的距离root

                ②没有距离最长root,

1.      若路径经过根Root。则U和V是属于不同子树的,且它们都是该子树中道根节点最远的节点。否则跟它们的距离最远相矛盾。这样的情况如图3-13所看到的:

求二叉树中节点的最大距离 - seven - Seven 的博客

2.      假设路径不经过Root。那么它们一定属于根的K个子树之中的一个。

而且它们也是该子树中相距最远的两个顶点。如图3-14中的节点A:

求二叉树中节点的最大距离 - seven - Seven 的博客

设第K棵子树中相距最远的两个节点:Uk和Vk,其距离定义为d(Uk,Vk),那么节点Uk或Vk即为子树K到根节点Rk距离最长的节点。不失一般性。我们设Uk为子树K中道根节点Rk距离最长的节点。其到根节点的距离定义为d(Uk,R)。取d(Ui,R)(1<=i<=k)中最大的两个值max1和max2。那么经过根节点R的最长路径为max1+max2+2,所以树R中相距最远的两个点的距离为:max{d(U1,V1),…, d(Uk,Vk),max1+max2+2}。

 

採用深度优先搜索如图3-15,仅仅须要遍历全部的节点一次,时间复杂度为O(|E|)=O(|V|-1),当中V为点的集合。E为边的集合。

 求二叉树中节点的最大距离 - seven - Seven 的博客

版权声明:本文博主原创文章。博客,未经同意不得转载。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/117115.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)
blank

相关推荐

  • mysql查询前十条记录_查询前十条数据

    mysql查询前十条记录_查询前十条数据select*fromno_primary_keyorderbyidlimit10;#显示从id=1到id=10的前10条记录;   select*fromno_primary_keylimit10;#随意显示其中10条记录;   注意:不能用sel来代替select;但是可以用desc来代替describe;

  • pathname_not found in java.library.path

    pathname_not found in java.library.path|–ContextPath–|–ServletPath-|–PathInfo–|http://www.myserver.com/mywebapp/helloServlet/hello|——–RequestURI—————————-|

  • android toast防重_如何解决android Toast重复显示

    android toast防重_如何解决android Toast重复显示Toast是一种简易的消息提示框,它无法获取焦点,按设置的时间来显示完以后会自动消失,一般用于帮助或提示。先给大家分享下我的解决思路:不用计算Toast的时间之类的,就是定义一个全局的成员变量Toast,这个Toast不为null的时候才去make,否则直接setText.为了按返回键后立即使Toast不再显示,重写父类Activity的onBackPressed()方法里面去cancel你的T…

  • tabnine idea激活码【在线注册码/序列号/破解码】「建议收藏」

    tabnine idea激活码【在线注册码/序列号/破解码】,https://javaforall.cn/100143.html。详细ieda激活码不妨到全栈程序员必看教程网一起来了解一下吧!

  • Ubuntu18.04显卡驱动及CUDA卸载

    Ubuntu18.04显卡驱动及CUDA卸载背景故事上文提到显卡驱动和CUDA的安装,你们真的因为一切这么流畅么?当然不是,不然我也不会说是“踩坑”之旅了,因为驱动下错了,就搞了半天,这里记录一下如何卸载驱动和CUDA。卸载步骤卸载显卡驱动$sudoapt-get–purgeremovenvidia*$sudoaptautoremove卸载CUDA$sudoapt-get–purgeremove”*cublas*””cuda*”OK完成,可以重装了。ps.此时重启可能导致图形操作界面无法打开。

  • 国外最流行的Bootstrap后台管理模板「建议收藏」

    国外最流行的Bootstrap后台管理模板「建议收藏」工欲善其事,必先利其器对于从事软件开发的您也一样,有一套熟悉的bootstrap后台ui框架让您的开发速度大幅度提升这是本人经常使用到的一些bootstrap后台框架推荐给大家第一名inspiniabootstrap演示地址http://cn.inspinia.cn效果图http://cn.inspinia.cnhttp://cn.inspinia.cn第二名…

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号