algorithm - 贪心算法的时间复杂度找到一个图的最大独立集
问题描述
一个简单的贪心算法来找到一个最大的独立集,我认为这将花费 O(n) 时间,因为不会访问超过两次的顶点。为什么wiki说需要O(m)时间?
Greedy(G)
while G is not empty (visited V in an arbitrary order)
mark v as IS and v's neighbors as Non-IS
return all IS vertices
解决方案
如果您在 K n/2,n/2上运行它,则未选择一侧的邻居每个都被标记为非 IS n/2 次。
推荐阅读
- python - 将坐标字符串转换为 X,Y np 数组
- python - 特定 Excel 列的长度
- c# - 在身份验证期间,“.FindByNameAsync()”始终返回“NULL”
- java - 我从 sqlite 数据库中得到空白的回收视图?
- arrays - 为什么不使用 .map 从 stringArray 中删除最后一个句号
- javascript - 在整数中使用百分比
- sql-server - 连接可能未正确配置,或者您可能对此连接没有正确的权限
- python - 在python中每秒将鼠标位置写入文件100次
- d3.js - 在 D3 中以可变速度动画多线图
- git - 如何忽略父目录(和 git root)中的文件?