Java教程

2022.7.8 并查集+路径压缩

本文主要是介绍2022.7.8 并查集+路径压缩,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

一个简洁优秀的讲解https://zhuanlan.zhihu.com/p/93647900

【模板】并查集

题目描述

如题,现在有一个并查集,你需要完成合并和查询操作。

输入格式

第一行包含两个整数 \(N,M\) ,表示共有 \(N\) 个元素和 \(M\) 个操作。

接下来 \(M\) 行,每行包含三个整数 \(Z_i,X_i,Y_i\) 。

当 \(Z_i=1\) 时,将 \(X_i\) 与 \(Y_i\) 所在的集合合并。

当 \(Z_i=2\) 时,输出 \(X_i\) 与 \(Y_i\) 是否在同一集合内,是的输出
Y ;否则输出 N

输出格式

对于每一个 \(Z_i=2\) 的操作,都有一行输出,每行包含一个大写字母,为 Y 或者 N

样例 #1

样例输入 #1

4 7
2 1 2
1 1 2
2 1 2
1 3 4
2 1 4
1 2 3
2 1 4

样例输出 #1

N
Y
N
Y

提示

对于 \(30\%\) 的数据,\(N \le 10\),\(M \le 20\)。

对于 \(70\%\) 的数据,\(N \le 100\),\(M \le 10^3\)。

对于 \(100\%\) 的数据,\(1\le N \le 10^4\),\(1\le M \le 2\times 10^5\),\(1 \le X_i, Y_i \le N\),\(Z_i \in \{ 1, 2 \}\)。

这篇关于2022.7.8 并查集+路径压缩的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!