求解
代码如下: 问题, vector father=vector(n,0);不报错,而使用vector father(n,0);报错未定义的n?为什么?
class Solution {
private:
int n=200005;
vector father=vector(n,0);
// vector father(n,0);
void init(){
for(int i=0;i father[i]=i;
}
}
int find(int u){
return u==father[u]?u:find(father[u]);
}
bool isSame(int u,int v){
u=find(u);
v=find(v);
return u==v;
}
void join(int u,int v){
u=find(u);
v=find(v);
if(u==v) return;
father[v]=u;
}
public:
bool validPath(int nn, vector>& edges, int source, int destination) {
init();
for(int i=0;i join(edges[i][0],edges[i][1]);
}
return isSame(source,destination);
}
};
class Solution {
private:
int n=200005;
vector
// vector
void init(){
for(int i=0;i
}
}
int find(int u){
return u==father[u]?u:find(father[u]);
}
bool isSame(int u,int v){
u=find(u);
v=find(v);
return u==v;
}
void join(int u,int v){
u=find(u);
v=find(v);
if(u==v) return;
father[v]=u;
}
public:
bool validPath(int nn, vector
init();
for(int i=0;i
}
return isSame(source,destination);
}
};
全部评论
相关推荐
11-22 18:10
四川大学 其他机械职位 听说改个名字就能拿offer_快来快来:啊?这样不是很正常吗,每个人都有自己的思维模式,以最小的代价去获取最高的回报,挺好啊感觉
点赞 评论 收藏
分享
11-21 18:05
北京化工大学 生物制药岗 点赞 评论 收藏
分享