图用邻接表和vector存有区别吗
  • 板块学术版
  • 楼主Xlw6friend
  • 当前回复13
  • 已保存回复13
  • 发布时间2023/12/23 19:32
  • 上次更新2023/12/23 21:50:36
查看原帖
图用邻接表和vector存有区别吗
741169
Xlw6friend楼主2023/12/23 19:32

如题。 本人蒟蒻,喜欢用vector存树。 看到题解区很多犇犇用邻接表存树。 (根本看不懂同学代码)

贴一下板子

存储

//vector
vector<int> e[MAXN];
//list
int cnt, head[MAXN], to[MAXN], nxt[MAXN];

建边

//vector
e[u].push_back(v);
//list
to[++cnt] = v;
nxt[cnt] = head[u];
head[u] = cnt;

遍历

//vector
for (auto v : e[u])
	dfs(v);
//list
for(int i = head[u]; i; i = nxt[i])
	dfs(to[i]);
2023/12/23 19:32
加载中...