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

商贸行业网站建设公司优化营商环境应当坚持什么原则

商贸行业网站建设公司,优化营商环境应当坚持什么原则,建一个网站多少钱?,只做网站应该找谁树的重心 定义 对于一个树,树的重心定义为:删掉某点 i 后,若剩余 k 个连通分量,那么定义 d(i) 为这些连通分量中点的个数的最大值,所谓重心,就是使得 d(i) 最小的点 i。 基于以上定义,一个树的重…

树的重心

定义

对于一个树,树的重心定义为:删掉某点 i 后,若剩余 k 个连通分量,那么定义 d(i) 为这些连通分量中点的个数的最大值,所谓重心,就是使得 d(i) 最小的点 i

基于以上定义,一个树的重心可能会有一个或者两个。

在这里插入图片描述
如图所示,这棵树无点权、无边权、无向。
假设我们删掉最上面的点,剩下的2个子树大小分别为5和3,那么取较大值d(i)=5
能够使 d(i) 最小的点,则为重心。

求法

dfs求重心代码:(C++)

#include<iostream>
#include<vector>
using namespace std;int n, minw = 999999, res_i = 0;
vector<int> adj[100001];  // 邻接表存储树
int siz[100001], maxv[100001];// 计算子树大小和最大分量值
void dfs(int v, int f) {siz[v] = 1;int maxw = 0;  // 子树中的最大节点数for (int i = 0; i < adj[v].size(); i++) {int next = adj[v][i];if (next == f) continue;dfs(next, v);siz[v] += siz[next];maxw = max(maxw, siz[next]);  // 子树大小}int f_num = n - siz[v];  // 父节点分量大小maxw = max(maxw, f_num);maxv[v] = maxw;// 更新重心if (maxv[v] < minw || (maxv[v] == minw && v < res_i)) {res_i = v;minw = maxv[v];}
}
int main() {cin >> n;int f1, f2;for (int i = 1; i < n; i++) {cin >> f1 >> f2;adj[f1].push_back(f2);  // 邻接表存边(双向)adj[f2].push_back(f1);}dfs(1, 0);cout << res_i << endl;return 0;
}

输入输出样例 #1

输入 #1

4
1 2 
2 3 
3 4

输出 #1

2
http://www.dtcms.com/wzjs/252662.html

相关文章:

  • 肥城网站建设流程百度搜索网页版入口
  • 密云做网站域名访问网站怎么进入
  • 企业邮箱怎么注册自己的账号石家庄网站建设seo
  • 西安网站建设制作价格低郑州seo网站管理
  • 网站开发账务处理市场营销
  • 网站如何做外链网页设计与制作用什么软件
  • 人工智能搭建赣州seo排名
  • microsoft做网站小说百度风云榜
  • 集团网站设计专业团队营销网站都有哪些
  • dede 网站打开自动加html百度网盘app官网下载
  • 前台网站建设企业网站优化工具
  • 做微网站用什么框架如何建立个人网址
  • 招生代理平台seo效果分析
  • g2g有哪些网站网络seo是什么工作
  • 河南省住房城乡建设厅官方网站西安网站seo诊断
  • 微小店网站建设官网成人电脑培训班办公软件
  • 网站模板 扁平化互联网培训
  • php网站语言切换功能如何做云seo
  • wordpress做管理网站吗国外搜索引擎大全百鸣
  • 做微商网站需要哪些免费seo网站推广
  • 怎样接做网站和软件的活网络营销图片素材
  • 做门户网站用什么模板好内容营销案例
  • 网站采集来源网站提交
  • 宁波网站制作相信荣胜网络优化整站
  • php网站开发实训心得百度收录查询api
  • 劳动保障局瓯海劳务市场和做网站泰安网络推广培训
  • 做加工都在哪个网站推广关键词推广效果分析
  • 有没有做鸭的网站工作室招聘新闻媒体发布平台
  • 网站备案中国开头朝阳seo建站
  • 学习网站建设与管理什么网站推广比较好