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

一个人在家做网站建设google安卓版下载

一个人在家做网站建设,google安卓版下载,如何创建一个企业网站,网站源码模板对于基环树,我们可以通过拓扑排序去掉所有的树枝,只剩下环,题目中可能会有多个基环树 思路:我们先利用拓扑排序将树枝去掉,然后求出每个基环树,之后反向dfs求得所有树枝的长度即可 class Solution { publi…

在这里插入图片描述

对于基环树,我们可以通过拓扑排序去掉所有的树枝,只剩下环,题目中可能会有多个基环树

在这里插入图片描述

思路:我们先利用拓扑排序将树枝去掉,然后求出每个基环树,之后反向dfs求得所有树枝的长度即可

class Solution {
public:vector<int> countVisitedNodes(vector<int>& edges) {//基环树板子题int n = edges.size();vector<vector<int>>ed(n);//反向建图跑距离vector<int>d(n), ans(n, 0);auto dfs = [&](auto dfs, int x, int l) ->void{ans[x] = l;for(auto u : ed[x])//反向遍历求距离{if(d[u] == 0)//不在环上的点{dfs(dfs, u, l + 1);}}}; for(int i = 0; i < n; i ++){ed[edges[i]].push_back(i);d[edges[i]] ++;}queue<int>q;for(int i = 0; i < n; i ++){if(d[i] == 0) q.push(i);}while(q.size()){int k = q.front();q.pop();auto it = edges[k];d[it] --;if(d[it] == 0) q.push(it);}for(int i = 0; i < n; i ++){if(d[i] <= 0) continue;vector<int>v;//记录每一个基环for(int j = i; ; j = edges[j]){d[j] = -1;//标记,防止重复访问v.push_back(j);if(edges[j] == i) break;}for(auto it : v){dfs(dfs, it, v.size());}}return ans;}
};
http://www.dtcms.com/wzjs/142499.html

相关文章:

  • 海棠网站是什么意思福州网络营销推广公司
  • 时时彩网站怎么做免费开店的电商平台
  • 跑步机网站建设思维导图搜索引擎推广的三种方式
  • 做网站fjfzwl竞价推广价格
  • 潍坊mip网站建设黑帽seo优化推广
  • 做网站需要什么开发语言全网营销系统
  • 当年的51网站网站优化排名易下拉系统
  • wordpress搭建子网站qq引流推广软件哪个好
  • 在国外服务器上做网站项目如何赚钱名词解释seo
  • 做棋牌网站要什么源码网络营销的用户创造价值
  • 百度网站地图怎么做搜索引擎营销的成功案例
  • 福彩网站开发互联网营销工具
  • wordpress百度主动长春seo优化企业网络跃升
  • 在百度上做公司做网站网站优化分析
  • 如何下载海外app快手seo关键词优化
  • 网站开发经验外链怎么做
  • 网站建设利润方象科技专注于什么领域
  • 百家利网站开发市场调研报告怎么写范文
  • wordpress自动保存远程图片站长工具seo查询软件
  • 网站系统正在升级维护2023新闻大事10条
  • 四川清风建设工程有限公司网站西安seo优化顾问
  • 国外做设计的网站seo网站关键词优化怎么做
  • 做企业网站 目的免费行情网站
  • 网站首页被黑seo是指什么岗位
  • 邢台做网站百度新闻官网首页
  • asp网站 并发数广东: 确保科学精准高效推进疫情
  • 做微信网站多少钱广州四楚seo顾问
  • 网站开发无使用期限怎么摊销恶意点击竞价时用的什么软件
  • 做微信充值网站青山seo排名公司
  • 帝国cms做微网站济宁seo公司