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

项城市建设方案公示在哪个网站wordpress会员卡系统

项城市建设方案公示在哪个网站,wordpress会员卡系统,网站建设功能列表,微信视频号推广方法L2-051 满树的遍历 - 团体程序设计天梯赛-练习集 (pintia.cn) 题解 数据结构选择 为了表示树的结构,我们可以使用邻接表。邻接表是一种常用的图和树的表示方法,它能够高效地存储每个节点的子节点信息。在本题中,我们可以使用一个数组 g&am…

L2-051 满树的遍历 - 团体程序设计天梯赛-练习集 (pintia.cn)

题解
  1. 数据结构选择

为了表示树的结构,我们可以使用邻接表。邻接表是一种常用的图和树的表示方法,它能够高效地存储每个节点的子节点信息。在本题中,我们可以使用一个数组 g,其中 g[i] 存储节点 i 的所有子节点。同时,使用一个数组 pre 来存储前序遍历的结果。

  1. 输入处理

  • 首先读取树中结点的个数 n

  • 接着,依次读取每个结点的父结点编号。对于每个结点 i,如果其父结点编号为 0,则说明该结点是根结点,记录其编号;否则,将结点 i 添加到其父结点的子节点列表中。

  1. 计算树的度和判断是否为 k 阶满树

  • 我们可以通过深度优先搜索(DFS)来遍历树。在遍历过程中,我们需要记录每个非叶结点的度,并找出树的最大度 k

  • 初始化 k 为根结点的度。在 DFS 过程中,如果遇到某个非叶结点的度不等于 k,则说明该树不是 k 阶满树,将标记 flag 设为 false。同时,更新 k 为所有非叶结点度的最大值。

  1. 前序遍历

  • 前序遍历的顺序是:根节点 -> 左子树 -> 右子树。在 DFS 过程中,当访问到一个节点时,将其加入到 pre 数组中,然后递归地访问其所有子节点。由于题目要求兄弟结点按编号升序访问,我们在存储子节点时会自动满足这个条件。

  1. 输出结果

  • 首先输出树的度 k

  • 根据 flag 的值,输出 yesno 表示该树是否为 k 阶满树。

  • 最后输出前序遍历序列 pre,数字间以一个空格分隔,行首尾不得有多余空格。

代码
#include<bits/stdc++.h>  // 包含所有标准库头文件
using namespace std;
const int N = 1e5+10;  // 定义常量 N,用于表示最大节点数
vector<int> g[N];  // 定义邻接表 g,g[i] 存储节点 i 的所有子节点
vector<int> pre;  // 定义向量 pre,用于存储前序遍历的结果
int k,root;  // 定义变量 k 表示树的度,root 表示树的根节点
bool flag=true;  // 定义布尔变量 flag,用于标记树是否为 k 阶满树
​
// 深度优先搜索函数,用于前序遍历树并判断是否为 k 阶满树
void dfs(int u){// 如果当前节点有子节点且子节点数量不等于 k,则不是 k 阶满树if(g[u].size()>0 && g[u].size()!=k){flag=false;// 更新树的度 k 为当前节点子节点数量和 k 中的较大值k=max(k,(int)g[u].size());}// 将当前节点加入前序遍历结果pre.push_back(u);// 递归遍历当前节点的所有子节点for(int i=0; i<g[u].size(); i++){dfs(g[u][i]);}return ;
}
​
int main(){int n;cin >> n;  // 输入节点数量for(int i=1; i<=n; i++){int x;cin >> x;  // 输入第 i 个节点的父节点编号if(x==0){root=i;  // 如果父节点编号为 0,则该节点为根节点}else{// 将节点 i 加入其父节点 x 的子节点列表g[x].push_back(i);}}// 初始化树的度 k 为根节点的子节点数量k=g[root].size();// 从根节点开始进行深度优先搜索dfs(root);// 输出树的度cout << k;// 根据 flag 的值输出是否为 k 阶满树if (flag)cout << " yes";else cout << " no";cout << endl;// 输出前序遍历结果for (int i = 0; i < pre.size(); i++) {if (i)cout << " ";cout << pre[i];}
}


文章转载自:

http://JYho2xdg.rfwgg.cn
http://k5pQnol3.rfwgg.cn
http://5WQxhYcU.rfwgg.cn
http://7VO3nIHf.rfwgg.cn
http://4UgPdMmL.rfwgg.cn
http://vTzOcO0w.rfwgg.cn
http://9hOHML2v.rfwgg.cn
http://Nx4x0swq.rfwgg.cn
http://IlrTOTXk.rfwgg.cn
http://HppO2ZIQ.rfwgg.cn
http://3tJ7sUF4.rfwgg.cn
http://gMlhD5xs.rfwgg.cn
http://gegDZQFw.rfwgg.cn
http://pr68hA68.rfwgg.cn
http://3DQt0ygP.rfwgg.cn
http://YJA99buf.rfwgg.cn
http://hUpAFTi1.rfwgg.cn
http://vX3nYOfc.rfwgg.cn
http://zxvvioBF.rfwgg.cn
http://qYNY4WvS.rfwgg.cn
http://Ni3O2GJH.rfwgg.cn
http://RQmSUEYc.rfwgg.cn
http://9MFBJOBj.rfwgg.cn
http://UbD2n1SI.rfwgg.cn
http://1rPNH0GD.rfwgg.cn
http://kTAenDsI.rfwgg.cn
http://5XOnQofe.rfwgg.cn
http://Tpy1xqBy.rfwgg.cn
http://olSoEdP6.rfwgg.cn
http://1CYWyhoP.rfwgg.cn
http://www.dtcms.com/wzjs/713900.html

相关文章:

  • 简单企业网站源码网页设计实训报告范文免费
  • 中国建设银行网站对公账户首页做安卓icon图标下载网站
  • 住房和城乡建设部网站唐山抽奖网站插件
  • 网站禁用右键如何创建自媒体手机网站
  • 怎么做贝店式的网站网站 后台 模板
  • 国内优秀html网站电子商务网站的建设视频
  • 鹤壁北京网站建设优设网学影视剪辑免费
  • 网站做支付宝支付接口厂房装修多少钱一个平方米
  • 达州网站建设公司中国交通建设集团有限公司待遇
  • 陕西省咸阳市建设银行网站汕头百度网络推广
  • 网站设计与开发范本深圳定制建站公司电话
  • 国贸汽车网站建设体彩网站开发
  • 北京微网站建设设计服务商wordpress 社交图标
  • 重庆网站线上推广荆州网站设计
  • 苏州做网站优化哪家好郑州优化公司有哪些
  • 江苏建设管理信息网站wordpress批量上传商品
  • 汕头智能模板建站做美容网站
  • 建设静态网站隔离需要多少钱
  • 电话网站源码家装设计包括哪些内容
  • 响应式网站是个坑网站 建设 汇报
  • 一个网站备案多个域名吗上海中高风险地区名单最新
  • 百度商桥可以在两个网站放网站策划书基本项目
  • 做家居网站徐汇建设机械网站
  • 潍坊网站seo谷歌关键词搜索工具
  • 淘宝店做网站建设不能开直通车在线旅游攻略网站建设方案
  • 做网站建设需要做哪些工作为什么公司网站打不开
  • 容桂手机网站建设许昌市住房城乡建设局网站
  • 怎么创办个人网站网站建设销售总结
  • 可以做引流网站的源码网站项目开发流程
  • 装修设计网站哪个好用必应搜索国际版