数据结构(树转线性)最近公共祖先
来源:互联网 发布:mac 虚拟机 游戏 编辑:程序博客网 时间:2024/06/05 21:16
最近公共祖先问题(本文内容来源于何林的《数据结构关系的简化》)
比较机智的构造一个数据结构,讲树简化成线性的.
比较机智的构造一个数据结构,讲树简化成线性的.
(下图来自《数据结构关系的简化》--何林)
找祖先,就是两个点之间深度最小的(●'◡'●)
To put it another way, that is 从叶子把父节点剖开两半,分别放在左和右。如果叶子结点有siblings的话如(4,5,6)那就每个都剖一次父节点,这样保证叶子结点的两边一定有父节点(也可以看出叶子结点和他的sibling的地位是对等的)。
从父节点的角度来看他只“包含”了子节点的信息。如此递归便可。
这个剖开向上的过程,就是二维向一维的转变。
然而这棵树的信息还是都保留了下来的。
问题边转化成了求区间最小值问题。
其实个人觉得这是一个双向问题,完全暴力的想把二维的树化成一维,随意构造数据结构是没有任何作用的(因为可以有各种构造),还要考虑得到了一维的数据结构可以用什么方法来解决。如此在构造过程便要讲究技巧了。
数据结构的联合。利用各种数据结构,将其结合起来,各种树套树,树套数套数之类。
0 0
- 数据结构(树转线性)最近公共祖先
- 二叉树-最近公共祖先(LCA)
- 二叉树最近公共祖先(LCA)
- 最近公共祖先LCA问题(转)
- java--数据结构--二叉树的最近公共祖先
- hihoCoder - 1062 - 最近公共祖先·一 (树的最近公共祖先问题!)
- 树的最近公共祖先
- 二叉树最近公共祖先
- 二叉树最近公共祖先
- 二叉树-最近公共祖先
- 【转】最近公共祖先问题
- LCA(最近公共祖先)
- 【最近公共祖先(LCA)】
- 最近公共祖先(LCA)
- 最近公共祖先(LCA)
- 最近公共祖先(离线)
- hdu2586(最近公共祖先)
- LCA(最近公共祖先)
- 【Leetcode】:169. Majority Element 问题 in Go语言
- HDU 5667 Sequence(矩阵快速幂+费马小定理)
- wxWidgets教程(4)- 绘图
- objc/runtime.h 相关
- xcode快捷键和mac快捷键
- 数据结构(树转线性)最近公共祖先
- HTTP协议理解与应用总结
- [LeetCode]Clone Graph
- servlet/filter/listener/interceptor区别与联系
- 计蒜客 挑战难题 X的平方根
- ios开发中归档的使用
- c++学习笔记1(指针和引用)
- JavaBean技术
- 在Ubuntu14.04上部署使用SMART HTTP的Git服务器