笛卡尔树
来源:互联网 发布:zte中兴网络机顶盒密码 编辑:程序博客网 时间:2024/04/29 03:26
性质
二叉树,其中的每一个点是整棵树的极值,且每一棵树的中序遍历是原数组的一段。
详见下图:
建树方法
每次加入到树的最右节点,若不符合其规范,沿着右边那一条链向上找,将它插入到恰好符合的那一个点的左节点,并且将那一段不符合的点加入到新加入点的右子树,并且更新右边那一条链。
例题
代码
scanf("%d",&n); for(i=1;i<=n;i++) { tree[i].lef=tree[i].rig=-1; scanf("%d",&num[i]); } now=1; gen=1; fa[1]=-1; for(i=2;i<=n;i++) { k=now; while(num[i]<num[k]&&k!=-1) { k=fa[k]; } if(k==-1) { tree[i].lef=gen; fa[gen]=i; fa[i]=-1; now=gen=i; } else { tree[i].lef=tree[k].rig; tree[k].rig=i; now=i; fa[i]=k; } }
阅读全文
1 0
- 笛卡尔树
- 笛卡尔树
- 笛卡尔树
- 笛卡尔树
- 笛卡尔树
- 笛卡尔树
- 笛卡尔树
- 笛卡尔树
- poj 2201 笛卡尔树
- sgu155 笛卡尔树
- 笛卡尔树
- poj2796Feel Good(笛卡尔树)
- PAT4-09. 笛卡尔树
- poj2051Fence Repair笛卡尔树
- 笛卡尔树cartesian tree
- 笛卡尔树构建
- pat-笛卡尔树
- poj 2201 笛卡尔树
- opencv2.4.7.2画圆,画十字,画矩形
- elasticsearch 集群
- 好久没来了啊,都改版了
- EA&UML日拱一卒-状态图::延缓(处理)事件
- 第一行代码-Fragment碎片
- 笛卡尔树
- localStorage
- leetcode 198. House Robber
- 商业web漏扫神器——burp suite篇详解
- zookeeper 集群
- jdk1.6版本解决https链接访问问题
- [01背包]【NOIP2014D1T3】飞扬的小鸟 题解
- reverseList
- WebSocket与消息推送