从候选点中任意选择两个点u, v:

  1. 如果存在u->v, 则u不可能为通用的汇

  2. 如果不存在则v不可能是通用的汇

 

每次选择都会去掉一个候选点,故需要选择V次, 可以使用链表来维护候选点,初始化需要O(V), 每次选择前两个即可,每次选择以及删除候选点都可以在O(1)内完成; 

由于是邻接矩阵,可以在O(1)时间判断是否存在u->v; 总的时间为O(V)

posted on 2012-07-27 09:58  ellusak  阅读(488)  评论(0编辑  收藏  举报