博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
PAT A1119 前序遍历后续遍历不唯一生成
阅读量:5995 次
发布时间:2019-06-20

本文共 801 字,大约阅读时间需要 2 分钟。

clipboard.png

之前仅仅接触过如何通过二叉树的中序+先序/后序序列生成唯一二叉树,这一次见到了这个新的题型;

这里先梳理一个概念,之所以会生成树不唯一,一定是有一个叶子,无论其在父节点的左右子节点,都可能生成相同的先序和后序遍历序列;

所以这个时候,思路就很清晰,我们判别一个序列是否唯一,条件就是是否有一个节点只有一个子节点;

大致的序列分割和先序和后续相同,这个后面专门开一个blog进行总结;

#include
#include
#include
#include
#include
#include
using namespace std;using std::vector;using std::set;vector
in,pre,post;bool uniq=true;void chargement(int prl,int prr,int pol,int por){ if(prl==prr){ in.push_back(pre[prl]); return ; } if(pre[prl]==post[por]){ int i=prl+1; while(i<=prr&&pre[i]!=post[por-1]) i++; if(i-prl>1) chargement(prl+1,i-1,pol,pol+(i-prl-1)-1); else uniq=false; in.push_back(post[por]); chargement(i,prr,pol+(i-prl-1),por-1); }}int main(){ int n; scanf("%d",&n); pre.resize(n); post.resize(n); for(int i=0;i

转载地址:http://wgqlx.baihongyu.com/

你可能感兴趣的文章
荣耀手机缅甸仰光店开业,只有我觉得缅甸美女比较多吗?
查看>>
融合数据库技术,降低开源MySQL使用成本实践
查看>>
IDC:全球以太网交换机和路由器市场整体看涨
查看>>
英国零售商:“无协议脱欧”恐让超市空荡荡
查看>>
致 CODING 用户的元宵问候
查看>>
看Zepto如何实现增删改查DOM
查看>>
《从零构建前后分离的web项目》:前端1.0 终 - 前端性能优化 (多图预警)
查看>>
什么都不做就能赚钱?Airbnb靠什么牛逼的技术赚全世界人的钱?
查看>>
读Zepto源码之操作DOM
查看>>
少年,我看你骨骼精奇,见与你有缘,这套算法赠你
查看>>
React Native 解决 Navigator.pop 无法传参数
查看>>
二级指针与ARC不为人知的特性
查看>>
如何合并两个TensorFlow模型
查看>>
移动端数据统计,精细化运营的永动机
查看>>
Electron Cash钱包存BCH教程
查看>>
iOS Tagged Pointer (源码阅读必备知识)
查看>>
原码,补码,反码
查看>>
Object assign()
查看>>
Java生成二维码
查看>>
JDBC 批量插入数据优化, 使用 addBatch 和 executeBatch
查看>>