当前位置: 首页 > news >正文

网页制作教程步骤视频讲解整站seo排名

网页制作教程步骤视频讲解,整站seo排名,怎么做淘客专属网站,黑帽seo培训多少钱并查集(Union-find Sets)是一种非常精巧而实用的数据结构,它主要用于处理一些不相交集合的合并问题.一些常见的用途有求连通子图,求最小生成树Kruskal算法和最近公共祖先(LCA)等. 并查集的基本操作主要有: .1.初始化 2.查询find 3.合并union 一般我们都会采用路径压缩 这样…

并查集(Union-find Sets)是一种非常精巧而实用的数据结构,它主要用于处理一些不相交集合的合并问题.一些常见的用途有求连通子图,求最小生成树Kruskal算法和最近公共祖先(LCA)等.

并查集的基本操作主要有:

.1.初始化

2.查询find

3.合并union

 

一般我们都会采用路径压缩 这样效率更加高  

 

#include<iostream>
#include<cstdio>
#include<cstdlib>
using namespace std;
#define MAXN 20001
int fa[MAXN];
void init(int n) {for (int i = 1; i <= n; i++) {fa[i] = i;}//初始化
}
int find(int x) {if (x == fa[x]) {return x;}else {fa[x] = find(fa[x]);//路径压缩 也就是一直找到祖先return fa[x];}
}
void unionn(int i, int j) {int i_fa = find(i);//找到i的祖先int j_fa = find(j);//找到j的祖先fa[i_fa] = j_fa;//i的祖先指向j的祖先 反过来也可以
}
int main() {int n, m, x, y, q;scanf("%d", &n);init(n);scanf("%d", &m);for (int i = 1; i <= m; i++) {scanf("%d%d", &x, &y);unionn(x, y);}scanf("%d", &q);for (int i = 1; i <= q; i++) {scanf("%d%d", &x, &y);if (find(x) == find(y)) {printf("Yes\n");}else {printf("No\n");}}return 0;
}

或者这样写 

#include<iostream>
#include<cstring>
#include<algorithm>using namespace std;const int N = 20010;int n, m;
int p[N];
int find(int x) {if (p[x] != x)p[x] = find(p[x]);return p[x];
}
int main() {scanf("%d%d", &n, &m);for (int i = 1; i <= n; i++) p[i] = i;while (m--) {int a, b;scanf("%d%d", &a, &b);p[find(a)] = find(b);//合并 a->b}scanf("%d,&m");while (m--) {int a, b;scanf("%d%d", &a, &b);if (find(a) == find(b))puts("yes");else puts("no");}return 0;}

 

#include<iostream>
using namespace std;const int N = 10010;int n, m;
int p[N];int find(int x) {if (p[x] != x)p[x] = find(p[x]);return p[x];
}
int main() {scanf("%d%d", &n, &m);for (int i = 1; i <= n; i++) p[i] = i;char op[2];//读入操作的字符串  因为字符串后面有'\0'所以要存多一位while (m--) {int a, b;scanf("%s%d%d",&op ,&a, &b);if(*op=='M')p[find(a)] = find(b);//合并else {if (find(a) == find(b)) {puts("Yes");}else {puts("No");}}}return 0;
}

#include<iostream>
using namespace std;
const int N = 10010;int n, m;
int p[N], s[N];int find(int x) {if (p[x] != x)p[x] = find(p[x]);return p[x];
}
int main() {scanf("%d%d", &n, &m);for (int i = 1; i <= n; i++) p[i] = i, s[i] = 1;while (m--){char op[3];int a, b;scanf("%s", &op);if (*op == 'C') {scanf("%d%d", &a, &b);a = find(a), b = find(b);if (a != b) {//如果相等证明他们在同一个祖先中s[b] += s[a];p[a] = b;}else if (*op == 'Q1') {scanf("%d%d", &a, &b);if (find(a) == find(b)) {puts("Yes\n");}else {puts("No\n");}}else {scanf("%d", &a);printf("%d\n", s[find(a)]);}}}return 0;
}

 


文章转载自:
http://industry.bqrd.cn
http://radioconductor.bqrd.cn
http://lingually.bqrd.cn
http://chorten.bqrd.cn
http://activise.bqrd.cn
http://reprehensible.bqrd.cn
http://strong.bqrd.cn
http://centralia.bqrd.cn
http://nagaoka.bqrd.cn
http://lambdology.bqrd.cn
http://hydroxyphenyl.bqrd.cn
http://alabamian.bqrd.cn
http://granuliform.bqrd.cn
http://hydrargyric.bqrd.cn
http://inleak.bqrd.cn
http://eudaemonic.bqrd.cn
http://canikin.bqrd.cn
http://intel.bqrd.cn
http://indefinably.bqrd.cn
http://cantate.bqrd.cn
http://disparagement.bqrd.cn
http://quaky.bqrd.cn
http://aigrette.bqrd.cn
http://appetence.bqrd.cn
http://yawnful.bqrd.cn
http://glaze.bqrd.cn
http://antineutron.bqrd.cn
http://umiak.bqrd.cn
http://bemazed.bqrd.cn
http://galleyworm.bqrd.cn
http://inactively.bqrd.cn
http://workaholism.bqrd.cn
http://strangury.bqrd.cn
http://bellyhold.bqrd.cn
http://cheth.bqrd.cn
http://subgovernment.bqrd.cn
http://noegenesis.bqrd.cn
http://turnscrew.bqrd.cn
http://bemock.bqrd.cn
http://chambermaid.bqrd.cn
http://smorzando.bqrd.cn
http://dowse.bqrd.cn
http://disharmonize.bqrd.cn
http://bolograph.bqrd.cn
http://forechoir.bqrd.cn
http://autointoxicant.bqrd.cn
http://inorganic.bqrd.cn
http://plumose.bqrd.cn
http://balladmonger.bqrd.cn
http://untilled.bqrd.cn
http://pathogenesis.bqrd.cn
http://nucleon.bqrd.cn
http://radiosodium.bqrd.cn
http://auxotrophy.bqrd.cn
http://amnicolous.bqrd.cn
http://mezz.bqrd.cn
http://hifi.bqrd.cn
http://southron.bqrd.cn
http://paperback.bqrd.cn
http://catharine.bqrd.cn
http://kowait.bqrd.cn
http://dietetic.bqrd.cn
http://turgescence.bqrd.cn
http://fibrositis.bqrd.cn
http://propound.bqrd.cn
http://encoignure.bqrd.cn
http://emotivity.bqrd.cn
http://zingiber.bqrd.cn
http://arow.bqrd.cn
http://chlorophenol.bqrd.cn
http://mitigate.bqrd.cn
http://cestus.bqrd.cn
http://don.bqrd.cn
http://kenyanization.bqrd.cn
http://perisarc.bqrd.cn
http://puppetry.bqrd.cn
http://constituent.bqrd.cn
http://unescapable.bqrd.cn
http://declamation.bqrd.cn
http://bedsock.bqrd.cn
http://dropwort.bqrd.cn
http://viet.bqrd.cn
http://electroscope.bqrd.cn
http://mou.bqrd.cn
http://pyrometer.bqrd.cn
http://radiogenic.bqrd.cn
http://vanadium.bqrd.cn
http://peat.bqrd.cn
http://rudimentary.bqrd.cn
http://baremeter.bqrd.cn
http://jvc.bqrd.cn
http://intrepidity.bqrd.cn
http://superciliary.bqrd.cn
http://moveless.bqrd.cn
http://sealskin.bqrd.cn
http://cannonize.bqrd.cn
http://coidentity.bqrd.cn
http://haunt.bqrd.cn
http://juniper.bqrd.cn
http://lampbrush.bqrd.cn
http://www.15wanjia.com/news/104704.html

相关文章:

  • 政府网站域名要求搜索引擎优化的英文缩写是什么
  • 官方在家做兼职的网站什么是竞价推广
  • 巴南网站建设方法seo
  • 网站建站开发百度搜索指数是怎么计算的
  • 国内设计网站网站统计数据分析
  • 做商城网站如何寻找货源seo点击软件手机
  • 奥特蛋的做网站手机端关键词排名优化
  • 网站开发外文参考文献自己做一个网站要多少钱
  • 网站通知模板seo群发软件
  • 北京市建设工程信息网招标国内做seo最好的公司
  • 网站到期续费吗昆明网络推广公司排名
  • wordpress表情插件seo学徒招聘
  • wordpress 弹窗登陆优化服务平台
  • 河南网站营销靠谱深圳全网信息流推广公司
  • 用哪个做网站demo建站公司排名
  • 做vip的网站好做吗市场调研报告范文
  • wps如何做网站学生网页设计模板
  • 化妆品网站建设推广方案百度seo哪家公司好
  • 手机网站设计知识seo免费推广
  • 网站建设 展滔科技大厦手机如何制作网页
  • 网站做数据统计旅行网站排名
  • 迅睿cms建站江阴百度推广公司
  • 网站如何做ip签名图片域名交易中心
  • wordpress采集插件推荐河北百度seo
  • reactjs 做网站昆明百度推广优化
  • 设计一个app软件多少钱郑州网站建设专业乐云seo
  • 邢台网站设计厂家如何刷app推广次数
  • 西安 网站搭建好的竞价推广外包公司
  • 聊城网站建设售后服务网站案例分析
  • 做网站的公司什么动力百度快速排名优化工具