问题
I was trying to solve the maximum independent set problem on bipartite graphs using the greedy method. So came across this post which does exactly what i was trying to do. But am concentrating only on the bipartite graphs. The counter case in the answer is not a bipartite graph. Are there any bipartite graphs that this one wont work?
Greedy(G):
S = {}
While G is not empty:
Let v be a node with minimum degree in G
S = union(S, {v})
remove v and its neighbors from G
return S
Why is greedy algorithm not finding maximum independent set of a graph?
回答1:
The same approach as in the original question answer applies here as well, with a slightly modified graph:

Start by removing #5, What's left is a paw graph (nodes (1,3,4,7)). Remove its leaves in any order. You discover a four-node independent set: (1,3,5,7)
Start by removing #6. What's left is a 4-cycle. Removing any node forces either of these sets:
- (1,3,6)
- (2,4,6)
both are three-element maximal (as in, cannot be expanded) independent sets, and thus not maximum (as in, the largest possible).
来源:https://stackoverflow.com/questions/15873272/why-is-greedy-algorithm-not-finding-maximum-independent-set-of-a-bipartite-graph