`
letitbe
  • 浏览: 235261 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

树的一种特殊设计(转)

阅读更多
不考虑极端的情况,通常组织机构有个10几个层次就是顶天了。 所有,可以用一个字段存储下所有祖先的信息,例如varchar2(300),其中可以用 '.'隔开。 我的设想是这样的:
id name Nodecode
1 a 1
2 b 1.2
3 c 1.3
4 d 1.2.4
5 e 1.2.5
6 f 1.2.5.6

从6可以直接看到它的上级脉络是6.5.2.1 。当然这里考虑的是级别不多的。但是除非你是很极端的应用,我想还是可以满足的。在插入和更新的时候注意维护nodecode即可。
如果要照到祖先,则只要解析一下nodecode即可。
同理如果要照后代,例如2的后代,则马上可以通过Like的方式获得.

另一篇:
因为TreeKey是个字符串,而1.10会排到1.2, 1.3之前,很显然,这不是我们要的结果。要解决其实也很简单,在编号前面补0,比如,1.10就写成0001.0010,1.2就写成0001.0002,这样排序就不会有问题了。

这让我想起很早前看的微软的一个有关树的软件代码,就看到他们是以000x.000x这种方式进行处理的,当时我还感觉他们怎么这么麻烦,现在想来,才发现是自己无知了,呵呵。


分享到:
评论

相关推荐

    树与二叉树的转换

    二叉树是树的一种特殊形式,每个节点最多只有两个子节点,通常分为左子节点和右子节点。树与二叉树之间的转换是一个重要的概念,尤其是在数据结构和算法的学习中。下面我们将详细探讨这个主题。 一、树到二叉树的...

    一种高效二叉查找树---红黑树

    红黑树是一种特殊的二叉查找树,通过对树的颜色编码来保持树的平衡,从而确保任何操作的时间复杂度都在对数级别。具体来说,红黑树满足以下条件: 1. **节点颜色**:每个节点要么是红色的,要么是黑色的。这需要在...

    与森林(树)的相互转换难点树和二叉树应用的算法设计应用.pdf

    二叉树是树的一种特殊形式,每个结点至多只有两棵子树,子树有左右之分。二叉树的定义、性质和应用都是树的重要内容。 二叉树的性质: 二叉树有多种性质,如满二叉树、完全二叉树、赫夫曼树等。这些性质都是二叉树...

    哈夫曼树 课程设计 实验报告

    哈夫曼树,也称为最优二叉树,是一种特殊的二叉树,它的特点是所有叶子节点到根节点的路径上,权值之和(路径长度)最小。这里的权值通常代表字符出现的频率或概率。在数据压缩中,哈夫曼编码是基于哈夫曼树的一种...

    子集树问题c++试设计一个用回溯法搜索子集空间树的函数。

    子集空间树是一种特殊的树结构,它表示了所有可能的子集。在装载问题中,每个节点代表一个装载方案,根节点表示空集合,叶子节点表示所有可能的装载组合。回溯法则是在这棵树中进行深度优先搜索的过程。 #### 四、...

    数据结构课程设计_哈夫曼树

    哈夫曼树是一种特殊的二叉树,常用于数据压缩和编码,通过构建最小带权路径长度的二叉树,使得频率高的字符编码长度较短,从而提高数据传输效率。 课程设计的主要任务包括: 1. 建立哈夫曼树:从用户输入的字符集和...

    数据结构二叉平衡树课程设计

    二叉平衡树是一种特殊类型的二叉树,它在保持二叉搜索树特性的同时,通过特定的结构调整策略确保了树的高度平衡。这样的平衡状态使得在树中进行查找、插入和删除等操作的时间复杂度都能保持在对数级别,极大地提高了...

    数据结构课程设计之树与二叉树的转换--大学毕业设计论文.doc

    树是一种非线性结构,广泛应用于计算机科学与技术领域,而二叉树是树结构中的一种特殊形式。在数据结构课程设计中,树与二叉树的转换是一个重要的研究方向。本文将对树与二叉树的转换进行详细的设计和分析。 一、树...

    数据结构(二叉平衡排序树)课程设计报告

    在这个课程设计报告中,我们将聚焦于一种特殊类型的二叉树——二叉平衡排序树,它在实际应用中展现出优秀的性能特点。 二叉平衡排序树,顾名思义,是一种保持平衡的二叉搜索树。传统的二叉搜索树在插入和删除操作后...

    数据结构课程设计树的应用树和二叉树的转换-毕业论文.doc

    二叉树是一种特殊的树结构,每个节点最多有两个子节点。二叉树的抽象数据类型定义包括数据对象、数据关系和基本操作。数据对象 D 是具有相同特性的数据元素的集合。数据关系 R 定义了二叉树的逻辑结构,包括二叉树的...

    二叉排序树--课程设计

    二叉排序树,又称二叉查找树或二叉有序树,是一种特殊的二叉树数据结构,它的特性使得在树中的搜索、插入和删除操作具有很高的效率。在这个课程设计中,你将深入理解并实践二叉排序树的核心概念。 首先,我们要明白...

    行业文档-设计装置-一种节水保温树盘.zip

    综上所述,这份“行业文档-设计装置-一种节水保温树盘.zip”内容全面,涵盖了从设计概念到实际应用的全过程,对于园林、环保和相关领域的从业者来说,是了解和实施节水保温措施的重要参考资料。

    数据结构课程设计\二叉平衡排序树

    二叉平衡排序树是一种特殊的二叉树数据结构,它的主要特点是保持了树的平衡,使得在插入、删除和查找操作中的平均时间复杂度为O(log n)。在数据结构课程设计中,二叉平衡排序树通常是一个重要的实践课题,旨在让学生...

    B_树 AVL树等的课程设计报告,源码和报告书

    其次,AVL树(Adelson-Velsky and Landis树)是一种特殊的二叉搜索树,要求任意节点的两个子树的高度差不超过1,确保了快速的查找性能。AVL树的平衡调整通过旋转操作(左旋和右旋)来完成,确保树在插入和删除操作后...

    算法-树形结构- 树与二叉树- 无根树转有根树.rar

    在计算机科学领域,树形结构是一种非常重要的数据结构,它被广泛应用于算法设计、数据库管理、编译器构造等多个方面。树与二叉树是树形结构中的基本概念,而将无根树转换为有根树是处理这类数据结构时常常会遇到的...

Global site tag (gtag.js) - Google Analytics