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

南昌盗网站少优化公司面向搜索引擎网站建设

南昌盗网站少优化公司,面向搜索引擎网站建设,秦皇岛网站开发,湖南常德职业技术学校连通性 在无向图中,若任意两点间均存在路径相连,则该图称为连通图。 若删除图中任意一个顶点后,剩余图仍保持连通性,则该图为点双连通图。 若删除图中任意一条边后,图仍保持连通性,则该图为边双连通图。 在…

连通性

在无向图中,若任意两点间均存在路径相连,则该图称为连通图。
若删除图中任意一个顶点后,剩余图仍保持连通性,则该图为点双连通图。
若删除图中任意一条边后,图仍保持连通性,则该图为边双连通图。
在有向图中,若将所有有向边视为无向边后得到的图是连通的,则称该图为弱连通图。
若在有向图中任意两点间均存在双向可达路径,则该图称为强连通图。

强连通分量

强连通分量(Strongly Connected Components,简称SCC)是指图中的极大强连通子图。

在有向图的 DFS 生成树中,存在四种类型的边:

  1. 树边:黑色实线,表示从父节点指向未被访问的子节点
  2. 返祖边:红色虚线,指向祖先节点的边
  3. 前向边:绿色虚线,指向子树中节点的边
  4. 横叉边:蓝色虚线,指向已访问过且既非祖先也非子树中的节点

需要注意的是,前向边和横叉边仅存在于有向图的DFS生成树中,而无向图只有树边和返祖边。
关于 DFS 生成树与强连通分量(SCC)的关系:

  • 在某个 SCC 中,最先被访问的节点 uuu 具有重要特性
  • 该 SCC 中其他所有节点必定位于以 uuu为根的子树中

证明过程如下:
假设 SCC 中存在节点 vvv 不在 uuu 的子树中:
uuuvvv 的路径必然包含离开该子树的边(横叉边或返祖边)
这类边指向的节点必须已被访问过
由于 uuuvvv 属于一个SCC,访问这些更早被访问的节点时应该能到达uuu
这与u是最先被访问的前提矛盾,故假设不成立。

实现

void tarjan(int u) {low[u] = dfn[u] = ++tot;sta.push(u);in[u] = 1;for (auto v : ve[u]) {if (!dfn[v]) {tarjan(v);low[u] = min(low[u], low[v]);} else if (in[v]) {low[u] = min(low[u], dfn[v]);}}if (dfn[u] == low[u]) {vector <int> vnow;while (vnow.empty() || vnow.back() != u) {vnow.push_back(sta.top());in[sta.top()] = 0;sta.pop();}scc.push_back(vnow);}
}

缩点

在图论问题中,我们可以将强连通分量(SCC)缩成一个节点,从而将原图转化为有向无环图(DAG)。在进行缩点操作时,需要特别注意原图与新图中边的对应关系。

边双连通分量

将强连通分量中的有向边替换为无向边后,就形成了边双连通分量。这是因为在强连通分量中,任意两点 uuuvvv 之间都存在 uuuvvvvvvuuu 的路径。当转换为无向边时,这些路径保证了任意两点之间至少存在两条不同的路径连接,这正是边双连通分量 (BCC) 的定义特征。

实现

void tarjan(int u, int fa) {low[u] = dfn[u] = ++tot;sta.push(u);in[u] = 1;int mark = 0;for (auto v : ve[u]) {if (v == fa) {if (!mark) {mark = 1;} else {low[u] = min(low[u], dfn[v]);}continue;}if (!dfn[v]) {tarjan(v, u);low[u] = min(low[u], low[v]);} else {low[u] = min(low[u], dfn[v]);}}if (dfn[u] == low[u]) {vector <int> vnow;while (vnow.empty() || vnow.back() != u) {vnow.push_back(sta.top());in[sta.top()] = 0;sta.pop();}bcc.push_back(vnow);}
}
http://www.dtcms.com/a/559874.html

相关文章:

  • c2c网站的建设网站建设全部教程
  • 宁夏建设工程造价信息网网站建设seo优化浙江
  • 选择扬中网站建设wordpress怎么安装访问
  • 做公司网站主要需要什么科目网站搭建教程导航类
  • 郑州网站app开发的上海四大设计院是哪四个
  • 南宁高端网站xp 做网站服务器吗
  • 黄埔网站推广莱芜最新新闻
  • 中国网站建设总部在哪里温州建设小学 网站首页
  • 上哪儿找做网站平台推广员是干嘛的
  • 东莞网站建设优化诊断网页界面设计使用的单位主要是
  • 网站建设的目的和意义怎样做网站卖东西 自己有货
  • 网站调用时间建站平台 绑定域名
  • 网站开发可演示的版本江苏建设信息电子证书
  • 深圳自助建站网站培训体系包括四大体系
  • 临沂罗庄做网站公司ppt网站哪家比较好
  • 萧山建设信用网站视觉传达毕业设计网站
  • 仿视频网站开发网站开发响应式
  • 做推广效果哪个网站好个人介绍网页
  • 一 网站建设的目的和目标免费制作邀请函的小程序
  • 做网站怎么买服务器华龙网重庆
  • 东莞最好的网站建设价格低深圳市土方建设网站
  • 捷信做单官方网站杭州移动公司网站
  • 餐饮业网站建设南京网站建设服务公司
  • 网站做推广赚钱项目企业网站运维
  • 深圳系统网站开发如何做拼多多商城官网站
  • 买衣服网站排名视频互联网推广选择隐迅推
  • ps如何做psd模板下载网站什么网站可以做十万的分期
  • 聊城专业网站设计公司网站推广介绍
  • 招标网站建设招标方案创办一家公司需要多少钱
  • 装修网站开发前的准备工作建设局网站投诉电话