湖南省长郡中学高中数学奥赛课件:图的算法及应用.pptx

湖南省长郡中学高中数学奥赛课件:图的算法及应用.pptx

  1. 1、本文档共67页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
;;;;01 基本概念;;;;;;;;;;;;02 图的遍历;;;;;;;;;;;;;;L;;;void dfs(int v) { int i,w,cnum=0; //cnum表示孩子个数 times++; visit[v]=1; dfn[v]=low[v]=times; //记录时间戳 for(i=0;i<map[v].size();i++) { w=map[v][i]; if(!visit[w]) //w没有访问过,则w是v的孩子结点 { cnum++; dfs(w); low[v]=min(low[w],low[v]); if(v==root&&cnum>=2) //如果v是根,且有2个以上的孩子,则为割点 flag[v]=1; if(v!=root&&low[w]>=dfn[v]) //不为根若low[w]>=dfn[v])??则为割点 flag[v]=1; } else if(v!=w) //w已经访问过了,说明从v到w有一条回边,w是v的祖先 { low[v]=min(low[v],dfn[w]); } } };;;;;void tarjan(int i) { int j; dfn[i]=low[i]=++times; // 为节点u设定次序编号和Low初值 instack[i]=true; Stack[++Stop]=i; // 将节点u压入栈中 for (edge *e=V[i];e;e=e->next) { j=e->t; if (!dfn[j]) { tarjan(j); if (low[j]<low[i]) low[i]=low[j]; } else if (instack[j] && low[j]<low[i]) low[i]=low[j]; } if (dfn[i]==low[i]) // 如果节点i是强连通分量的根 { Bcnt++; do { j=Stack[Stop--]; instack[j]=false; Belong[j]=Bcnt; }while (j!=i); } };;;;;;;; int main(){ ????int n=gi(),m=gi(); ????for(int i=1;i<=m;i++)add(gi(),gi()); ????for(int i=1;i<=n;i++)if(!dfn[i])dfs(i); ????for(int i=1;i<=n;i++){ ????????if(cd[be[i]])continue; ????????for(int j=b[i];j;j=next[j]) ????????????if(be[to[j]]!=be[i]){cd[be[i]]=1;break;} ????} ????int ans=0; ????for(int i=1;i<=cnt;i++) ????????if(!cd[i]){ ????????????if(ans){putchar('0');return 0;} ????????????ans=size[i]; ????????} ????printf("%d",ans); ????return 0; };03 最短路;;;;;Int ,m,S,tot,Next[500010],head[20000],tree[500010], val[500010]; bool visit[20000]; long long dis[20000]; struct cmp { bool operator()(int a,int b) { return dis[a]<dis[b]; } }; priority_queue<int,vector<int>,cmp> Q; void add(int x,int y,int z) { tot++;

文档评论(0)

yyons2019 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档