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

始兴生态建设网站免费十八种禁用网站

始兴生态建设网站,免费十八种禁用网站,jsp网站设计,期货网站开发题目链接 PAT甲级 1110 Complete Binary Tree 思路 第一次的写法不是很好。 对于这种完全二叉树的层序遍历,比较烦人的就是空孩子使得处理很麻烦。 思来想去还是把空位置也入队比较好。 这样的话,访问到空指针的时机被推迟了一个level 而完全二叉树的…

题目链接

PAT甲级 1110 Complete Binary Tree

思路

第一次的写法不是很好。
对于这种完全二叉树的层序遍历,比较烦人的就是空孩子使得处理很麻烦。
思来想去还是把空位置也入队比较好。

这样的话,访问到空指针的时机被推迟了一个level
而完全二叉树的叶子之间的层间距不会超过1
所以对于合法的完全二叉树,我们访问到空孩子的时机不会早于访问树中的任何叶节点

这样的话,当访问到空指针的时候:

  1. 对于合法的完全二叉树,一定树中所有元素都遍历完了,故有n == 0
  2. 若此时仍有n > 0,否则就说明层间有空隙,故不合法。

所以只要在访问到空指针的时候加入我们的判断即可,并记录还未访问的树节点个数。

代码

#include<bits/stdc++.h>using namespace std;vector<int> parent;
vector<pair<int, int>> children;int last = -1;int main() {int n;cin >> n;children.resize(n + 1, {-1, -1});parent.resize(n + 1, -1);for(int i = 0; i < n; ++i) {string left, right;cin >> left >> right;if(left != "-") {children[i].first = stoi(left);parent[stoi(left)] = i;}if(right != "-") {children[i].second = stoi(right);parent[stoi(right)] = i;}}int root = -1;for(int i = 0; i < n; ++i) {if(parent[i] == -1) {root = i;break;}}assert(root != -1);queue<int> q;q.push(root);bool flag = true;while(! q.empty() && flag) {int size = q.size();int pre_is_null = 0;while(size--) {auto node = q.front();q.pop();if(node == -1) {if(n > 0) {flag = false;}break;}last = node;--n;auto left = children[node].first;auto right = children[node].second;q.push(left);q.push(right);}}if(! flag) {cout << "NO " << root;} elsecout << "YES " << last;cout << endl;
}
http://www.hrbkazy.com/news/44924.html

相关文章:

  • 网站qq访客获取百度推广是干什么的
  • 网站如何建数据库seo实战密码第四版pdf
  • 长沙网站建设湘icp备网站排名seo
  • 动态ip建网站竞价关键词排名软件
  • 最新项目重庆seo优化效果好
  • 随州有哪些网站建设的公司十大收益最好的自媒体平台
  • 成都h5网站建设推广普通话的宣传语
  • 玉环 企业网站建设深圳seo招聘
  • 秦皇岛 网站楼市最新消息
  • 品牌故事seo博客
  • 广告投放计划seo可以提升企业网站的
  • 做篮球管理网站的步骤提高工作效率的方法有哪些
  • 自己做网站 怎么解决安全问题宁波seo在线优化哪家好
  • 广西南宁房产网站建设百度网盘电脑版
  • 常德网站建设制作如何做好seo基础优化
  • php的网站怎么做html网页制作软件有哪些
  • 那家网站做照片书好营口seo
  • 做网站 贴吧手机百度ai入口
  • 番禺网站建设方案网店推广费用多少钱
  • 颛桥做网站北京seo推广系统
  • 西安品牌策划seo网络推广公司
  • 邮箱怎么上传wordpressseo资讯网
  • 网站怎么做第三方支付接口餐饮最有效的营销方案
  • 网站流量数据分析怎么做东莞网站推广运营公司
  • 免费送的广告怎么在网站上做深圳seo优化推广
  • 包头网站建设熊掌号营销软文写作
  • asp.net做网站怎么样安卓优化大师官网
  • 企业网站开发模板直销的八大课程
  • 公司如何做网站网站seo基础
  • 外贸 推广网站谁有推荐的网址