博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
克鲁斯卡尔重构树
阅读量:5993 次
发布时间:2019-06-20

本文共 425 字,大约阅读时间需要 1 分钟。

定义

克鲁斯卡尔重构树可以维护诸如“查询从某个点出发经过边权不超过某个值的边最远所能到达的节点”或“从某点到某点所有路径的最长边的最小值”之类的问题。总之,算法处理范围有限,且多为同时包含“最大最小”、离线可二分的题目。

可与数据结构结合,以维护更复杂的数据结构。 它可以在线回答,复杂度为O(logn)

 

构建

把边权从大到小排序,用给两端点(两个联通块)新建一个权值为边权的共同父亲,来代表给它们加了一条边。

性质
树上除叶子结点以外的点都对应着原来生成树中的边,叶子结点就是原来生成树上的节点。
由于新点的创建顺序与原来生成树上边权的大小有关(从大到小),可以发现,从每个点到根节点上除叶子结点外按顺序访问到的点的点权是单调的。
出于算法贪心的性质,两个点和的的点权就对应着它们最小生成树上的瓶颈。
实际上这棵树就是一个二叉堆。

相关题目:

转载于:https://www.cnblogs.com/wmq12138/p/10381000.html

你可能感兴趣的文章
2015年这6部科幻电影,你看了吗?
查看>>
导出excel(sqlserver)
查看>>
Gallery Server Pro ----用于分享相片,视频,音频及其他媒体的ASP.NET相册[Carol]
查看>>
Uvaoj 11248 Frequency Hopping(Dinic求最小割)
查看>>
网站统计代码
查看>>
安装centos 7的时候出现An Unknown Error Has Occurred
查看>>
Linux常用命令大全
查看>>
ceph存储 磁盘IOPS常识
查看>>
ORA-12720: operation requires database is in EXCLUSIVE mode
查看>>
ELK日志服务使用-kafka传输日志(bbotte.com)
查看>>
linux系统之iptables其二命令注解
查看>>
Silverlight C# 游戏开发:高深莫测却浅显易懂的游戏开发
查看>>
AI将如何改变广告业,这里有三个计算机视觉应用案例
查看>>
标准ACL+扩展ACL+命名ACL
查看>>
Apache2.4.1编译安装报错解决
查看>>
Linux常用的基本命令14
查看>>
《zabbix进程组成结构与zabbix_agentd.conf配置文件参数详解》-3
查看>>
8-22学习练习[一个viewController整合增删移动功能]
查看>>
MySQL的字符集
查看>>
Nginx+Tomcat实现反向代理及动静分离
查看>>