作者热门文章
- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
例如,假设我有一个图 G = (V, E),其中
V = {A、B、C、D}
E = {(A, B), (A,D), (C, D)}
这个图是二分图,因此可以分成两个不相交的集合 {A, C} 和 {B, D}。我的第一个猜测是我可以简单地遍历图形并为每个顶点分配交替颜色。是这种情况,还是比这更复杂/更简单?是否有任何已知的算法?
最佳答案
您的第一个猜测是正确的 - 遍历图并交替。
算法应该很简单。我会保留两个节点队列来访问,每种颜色一个。交替从队列中弹出节点,标记其颜色,并将任何未访问的相邻节点插入相反颜色的队列中。当访问的节点数 + 两个队列的长度 = 图中的节点数时终止。
关于algorithm - 如何按颜色划分二分图?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1655162/
我正在尝试编写一个程序,在名为 items 的数组中进行顺序搜索和二分搜索,该数组具有 10000 个已排序的随机 int 值。第二个名为 targets 的数组加载了 1000 个 int 值(50
当我尝试使用图表并为其编写一些代码但没有成功时,我遇到了一个问题:/!! 我想创建一些东西来获取图形数据并检查它是否:1- 连接2-二分法3-有循环4-是一棵树 所以我想知道,例如,是否可以将其写入以
我是一名优秀的程序员,十分优秀!