wangbinfeng @ 2023-12-20 20:01:12
rt,我不喜欢用链式前向星(我一般用邻接表存图),弱校自学网络流,网上搜到的视频和题解都是链式前向星,其中有一个视频甚至说出了“dinic必须使用链式前向星”,因此,求助一下这句话是否正确。
缩句:Dinic是否必须使用链式前向星存图,如果不是,是否可以使用邻接表。
附加题:求推荐分层图讲解视频或blog,bdfs无果
by wangbinfeng @ 2024-01-03 23:55:41
@__Cby___ 这么古老的帖子您都能发现
迷,我学的书里邻接表是我这种写法。书是各个大学都用的那种。编者我也不知道,毕竟现在大学教材各种抄袭。
具体哪种对我现在也不太有心情争,思路其实大同小异,也不好说谁对谁错。
顺便扔个blog,正确性存疑,但至少可以说明我这种写法一般也是邻接表。
by wangbinfeng @ 2024-01-03 23:56:33
@__Cby___ 两种区别不就是一个手写链表,一个直接用vector,本质一模一样。反而链式前向星差别还能大一点……
by wangbinfeng @ 2024-01-03 23:58:31
@__Cby___ 这种名词本来也没有对错,就是习惯问题。然后我认为并没有标准,名字只是第一个翻译者定的,然后习惯了
如果有官方文件那我承认官方文件。
by toolazy @ 2024-01-04 21:37:54
我都是直接用 vector
大法(从来没写过前向星qwq我太蒻了
edge
我都这样打:
struct edge {
int to, cap, rev;
};
void adde(int a, int b, int cap) {
g[a].push_back({b, cap, g[b].size()});
g[b].push_back({a, 0, g[a].size() - 1});
}
到时候查反向边就可以 vector
小很多耶