684. 冗余连接
并查集
class Solution {
public:
vector<int> findRedundantConnection(vector<vector<int>>& edges) {
int n=edges.size();
vector<int> parents(n+1);
for(int i=1;i<=n;++i){
parents[i]=i;
}
for(auto e:edges){
int x=e[0],y=e[1];
int l1=find(x,parents),l2=find(y,parents);
if(l1==l2)
return e;
parents[l1]=l2;
}
return {-1,-1};
}
int find(int x,vector<int> &parents){
return x==parents[x]?x:parents[x]=find(parents[x],parents);
}
};