algorithm - 给定一个未加权的图,我如何找到具有 1 的生成树。最大叶数 2 最小叶数
问题描述
- 编写一个算法来找到具有最大叶子数的生成树。
- 编写一个算法以找到具有最少节点数的生成树。
我还无法为以下问题提出解决方案。
对于第一部分,我的想法是找到具有最高度数的顶点并将其放置在倒数第二层中,以便最后一层获得最大数量的叶子。
解决方案
找到具有最大叶子数的图的生成树是一个 NP-Complete 问题。支配集问题有一个减少,它是 NP 完全的。
找到具有最少叶子的图的生成树也是一个 NP-Complete 问题。假设如果图有一条哈密顿路径,那么图有一个只有两片叶子的生成树。因此,找到具有最小叶数的图的生成树等价于找出图是否具有哈密顿路径。
因此,对于这两个问题,您都需要开发近似算法。
推荐阅读
- google-analytics - 谷歌分析事件跟踪不起作用
- java - 使用 Spring EL 将值设置为 lambda
- c# - C# - 通过反射按属性排序
- python - 使用 lambda 函数进行精确字符串搜索
- gnuplot - Gnuplot:来自文件 .plt 的插图
- ios - 不同半径的圆角
- .htaccess - 冒号有什么问题:在###comment 中?
- excel - 复杂的 IF 语句多张表
- elasticsearch - 如何将 Logstash 通过输出插件发送到 Elasticsearch 的 _bulk 请求有效负载记录下来?
- node.js - 错误:在 Firebase 文件存储中找不到