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

盐城做网站的公司地址物业管理系统功能结构图

盐城做网站的公司地址,物业管理系统功能结构图,天津大型网站设计公司,ui培训设计机构这是一道我一开始没怎么看懂的题目#xff0c;然后后面看了y神的讲解就豁然开朗了 不过我们首先要有先置知识来理解这道题目 先置知识 邻接表#xff1a;是一种表示图的数据结构#xff0c;它通过链表的方式记录每个顶点及其相邻的顶点。在这个具体的问题中#xff0c;使…这是一道我一开始没怎么看懂的题目然后后面看了y神的讲解就豁然开朗了 不过我们首先要有先置知识来理解这道题目 先置知识 邻接表是一种表示图的数据结构它通过链表的方式记录每个顶点及其相邻的顶点。在这个具体的问题中使用数组 h 来表示邻接表。 h 数组h 数组的每个元素 h[i] 是一个链表的头指针指向以节点 i 为起点的链表的第一个元素。链表中的每个节点表示节点 i 可以直接连接的其他节点。 int h[N]; Arrays.fill(h, -1);这段代码初始化了 h 数组将每个顶点的链表头指针初始化为 -1表示初始时每个顶点没有相邻的节点。 数组建立邻接表 int h[N], e[N * 2], ne[N * 2], idx; // 数组范围要得是两倍才行 public static void add(int a, int b) {e[idx] b; // 将节点b添加到节点a的邻接表中ne[idx] h[a]; // 更新节点a的邻接表头将当前边的下一个节点设置为原来的邻接表头h[a] idx; // 更新节点a的邻接表头为当前边的索引并将索引自增 }e 数组存储了图中边的终点ne 数组存储了下一条边的索引h 数组存储了每个节点的邻接表头。idx 是一个全局变量用于表示当前边的索引。在函数内部首先将节点b添加到节点a的邻接表中表示a指向b。然后更新节点a的邻接表头将当前边的下一个节点设置为原来的邻接表头。最后更新节点a的邻接表头为当前边的索引并将索引自增确保每次添加边都使用新的索引。 树的bfs模板 // 需要标记数组st[N], 遍历节点的每个相邻的便 void dfs(int u) {st[u] true; // 标记一下记录为已经被搜索过了下面进行搜索过程for (int i h[u]; i ! -1; i ne[i]) {int j e[i];if (!st[j]) {dfs(j);}} }题目 给定一颗树树中包含n个结点编号 1∼n和 n−1 条无向边。 请你找到树的重心并输出将重心删除后剩余各个连通块中点数的最大值。 重心定义重心是指树中的一个结点如果将这个点删除后剩余各个连通块中点数的最大值最小那么这个节点被称为树的重心。 输入格式 第一行包含整数 n表示树的结点数。 接下来 n−1 行每行包含两个整数 a 和 b表示点 a 和点 b 之间存在一条边。 输出格式 输出一个整数 m表示将重心删除后剩余各个连通块中点数的最大值。 数据范围 1≤n≤105 输入样例 9 1 2 1 7 1 4 2 8 2 5 4 3 3 9 4 6输出样例 4代码与解析 import java.util.Arrays; import java.util.Scanner;public class Main {static final int N 100010, M N * 2;static int n;static int[] h new int[N], e new int[M], ne new int[M];static int idx;static int ans N;static boolean[] st new boolean[N];public static void add(int a, int b) {e[idx] b;ne[idx] h[a];h[a] idx;}// 深度优先搜索返回以u为根的子树的节点数public static int dfs(int u) {st[u] true; // 标记节点u已经被访问int size 0, sum 0; // size记录u的最大子树节点数sum记录u统领的所有子节点数for (int i h[u]; i ! -1; i ne[i]) { // 遍历节点u的所有邻接节点int j e[i]; // j为u的邻接节点if (st[j]) { // 如果j已经被访问过继续下一个邻接节点continue;}int s dfs(j); // 递归调用dfs计算以j为根的子树的节点数size Math.max(size, s); // 更新u的最大子树节点数sum s; // 累加u统领的所有子节点数}size Math.max(size, n - sum - 1); // 计算删除u后剩余各个连通块中节点数的最大值ans Math.min(size, ans); // 更新全局最小值return sum 1; // 返回u节点所有u节点统领的节点的综合}public static void main(String[] args) {Scanner sc new Scanner(System.in);n sc.nextInt(); // 读取树的总节点数Arrays.fill(h, -1); // 初始化每个节点的链表为空for (int i 1; i n; i) {int a sc.nextInt();int b sc.nextInt();add(a, b); // 添加一条从a到b的边add(b, a); // 添加一条从b到a的边}dfs(1); // 从节点1开始深度优先搜索System.out.println(ans); // 输出最终结果} }
http://www.pierceye.com/news/203395/

相关文章:

  • 溧阳城乡建设厅网站惠州专业网站建设
  • app嵌入手机网站dw旅游网站怎么做
  • wpf做网站烟台做网站工资
  • 做网站公司名字网站建设方案对比分析报告
  • 网站360优化网站开发所需技术
  • 宁河做网站公司wordpress漏洞扫描工具
  • 单位网站建设的目的手机可以做网站服务器吗
  • 上海网站建设有限公司lnmp安装wordpress限权
  • 大航母网站建设服务php一般网站空间多大
  • 中性衣服印花图案设计网站做网站的工作
  • 只做女性的网站编程入门先学什么软件
  • 创客网站建设新余公司做网站
  • 买个网站域名多少钱网站建设 内容缺乏
  • 清河做网站哪里好建设一个网站的文案需要
  • 农机网站模版建网站用什么工作站
  • 网站可以做无形资产游戏代理0加盟费
  • 高端网站建设哪家公司好城乡建设部网站甘红刚
  • 湖北省建设部网站网站排名seo教程
  • 郑州 高端网站建设网络结构有哪几种
  • 电脑做apk的网站h5工商网站如何做实名
  • 循化网站建设公司c语言开发工具
  • wordpress网站做app关于网站的ppt怎么做
  • 怎么建设商品网站项目计划书范文
  • 大足建网站的网页微信版官方下载
  • 企业网站免费建设做网站设计需求
  • 做电影网站用什么虚拟主机建设网站模块需要哪些内容
  • 基于asp.net网站开发优化企业网站
  • 做网站有了空间在备案吗网站建设实务课本
  • 个人站长和企业网站wordpress主键外键
  • 关于对网站建设情况的通报东南亚跨境电商有哪些平台