码迷,mamicode.com
首页 > 其他好文 > 详细

图论小技♂ 巧!?

时间:2019-02-03 12:18:55      阅读:226      评论:0      收藏:0      [点我收藏+]

标签:自己   就是   多源   理解   最大   使用   避免   ops   topsort   

  • 最近寒假里刷了一些题,发现,每种算法并不是套模版那么简单。每种算法都有其性质,充分利用性质,我们就可以利用学会的知识解决未学过的题。
  • 如果有补充,欢迎到下面留言!

1. 拓扑排序

  • 说到topsort,很多人第一反应就是它可以将图排成一个线性表。
  • 好吧,如果仅是知道这一点,那就才疏学浅了... ...
  1. 排序
    • 这点最好理解了,顾名思义,就是,排序QwQ
  2. 解决无后效性问题
    • 这点可以和dp结合起来。往往是树形dp,按照拓扑序进行dp。这样就可以避免使用bfs爆栈
  3. 判环
    • 利用它的性质,跑一遍topsort,看看被跑的点与整个图的点是否相等。相等就没环,否则就有
  4. 找最大/小环
    • 将图不断简化(去掉入度为0的点),最后剩下来的肯定就是一个个环。然后,遍历一个取最大/小值即可

2. 最短路

  • 最短路里也有一些技巧帮助解题!
  1. spfa判负环
    • 自己去Google(逃
  2. 建反向边
    • 这是一个很常用的技巧。比如说多源最短路,我不可能跑n遍最短路吧,所以建一次反向边,跑一遍单源最短路即可

图论小技♂ 巧!?

标签:自己   就是   多源   理解   最大   使用   避免   ops   topsort   

原文地址:https://www.cnblogs.com/BigYellowDog/p/10350001.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!