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

合肥做英文网站网站建设常用的英文

合肥做英文网站,网站建设常用的英文,昆明抖音代运营公司,公司网页制作题目描述 对应给定的一个序列可以唯一确定一棵二叉排序树。然而,一棵给定的二叉排序树却可以由多种不同的序列得到。例如分别按照序列{3,1,4}和{3,4,1}插入初始为空的二叉排序树,都得到一样的结果。你的任务书对于输入的各种序列,判断它们是否…

题目描述

对应给定的一个序列可以唯一确定一棵二叉排序树。然而,一棵给定的二叉排序树却可以由多种不同的序列得到。例如分别按照序列{3,1,4}和{3,4,1}插入初始为空的二叉排序树,都得到一样的结果。你的任务书对于输入的各种序列,判断它们是否能生成一样的二叉排序树。

输入描述

输入包含若干组测试数据。每组数据的第1行给出两个正整数N(n≤10)和L,分别是输入序列的元素个数和需要比较的序列个数。第2行给出N个以空格分隔的正整数,作为初始插入序列生成一颗二叉排序树。随后L行,每行给出N个元素,属于L个需要检查的序列。
简单起见,我们保证每个插入序列都是1到N的一个排列。当读到N为0时,标志输入结束,这组数据不要处理。

输出描述

对每一组需要检查的序列,如果其生成的二叉排序树跟初始序列生成的二叉排序树一样,则输出"Yes",否则输出"No"。

样例

输入
4 2
3 1 4 2
3 4 1 2
3 2 4 1
2 1
2 1
1 2
0
输出
Yes
No
No


思路:因为二叉排序树的中序遍历都为一个升序序列,即中序遍历序列都相同,又因为一棵树可由中序遍历和前序遍历所确定,因此我们判断其前序遍历序列是否相同即可,若前序遍历序列相同,则树形相同。

建树过程

  • 先申请一个树根并初始化:
    Node *rx=new Node;
    rx = NULL;
  • 递归建树,若遇到空结点,则申请一个新节点,并对其属性初始化:
    root = new Node;
    root->id = val;

Code:

#include<bits/stdc++.h>
using namespace std;
const int INF = 1e9 + 10;
struct Node {Node* left=NULL;Node* right=NULL;int id;
};
vector<int> p,q;
map<vector<int>,bool> mp;
Node* build(Node *root,int val) {if(root == NULL) {root = new Node;root->id = val;} else if(val>=root->id) root->right = build(root->right,val);else root->left = build(root->left,val);return root;
}
void work1(Node *root) {if(root == NULL) return;p.push_back(root->id);if(root->left) work1(root->left);if(root->right) work1(root->right);}
void work2(Node *root) {if(root==NULL) return;q.push_back(root->id);if(root->left) work2(root->left);if(root->right) work2(root->right);}
int main() {int n,l;while(cin >> n && n) {cin >> l;mp.clear();Node *rx=new Node;rx = NULL;int k;for(int i=0; i<n; i++) {cin >> k;rx = build(rx,k);}work1(rx);mp[p] = 1;while(l--) {Node *ry=new Node;ry = NULL;q.clear();for(int j=0; j<n; j++) {cin >> k;ry = build(ry,k);}work2(ry);mp[q]==1?puts("Yes"):puts("No");}}return 0;
}
http://www.yayakq.cn/news/232497/

相关文章:

  • 做视频网站犯法么怎样在国外网站购买新鲜橙花做纯露
  • 网站建设好之后怎么自己推广在网站设计中 网页框架设计
  • 信息咨询公司网站源码华为云建站怎么样
  • 网站的建设书籍沧州网站建设选网龙
  • 网站怎么容易被百度收录新手如何注册网站域名
  • 特价网站源码西安定制网站建设公司哪家好
  • 选择邯郸网站建设网站免费诊断
  • 动画制作软件flash官方下载网站代码优化多少钱
  • 东莞企业网站建设设计那些视频网站能用来直接做href
  • 微网站方案怎么写wordpress 3.9 模板
  • 广告公司名称怎么取好郑州网站优化排名
  • 做网站图片分辨率中国企业有哪些
  • 网站建设与管理维护说课免费空间申请free
  • 江西赣鄂皖路桥投资有限公司网站建设开发网站建设的问卷调查
  • ipv6网站建设东莞梅州建站电话
  • 莆田网站制作方案定制开发网站开票写什么
  • 企业网站新闻如何建设西安的商城网站
  • 聊城网站优化技术济宁贵网站建设
  • 网站后台框架下载上海网页设计公司
  • 制作网制作网站建设的公司西安seo顾问培训
  • wordpress手机网站怎么做wordpress 全局广告
  • 怎么网站建设网站建设注册密码咋弄
  • 南京网络科技网站建设哪个免费建站好
  • 做受免费网站怎么样建立自己的网站
  • google chrome谷歌浏览器seo综合诊断工具
  • 成都建站提供商网站的开发建设费
  • 东阳网站建设yw12605网课时作业本
  • 建筑公司网站背景图有赞微商城官网登入
  • 富锦网站西斗门的网站建设
  • 罗湖网站-建设深圳信科WordPress网站远程访问