`
linfeng0306
  • 浏览: 496 次
  • 性别: Icon_minigender_2
  • 来自: 北京
最近访客 更多访客>>
社区版块
存档分类
最新评论

treenode 数据更新

阅读更多

1、用父节点的left更新,每次更新都会更新与其同级的子节点及 其父节点 及与其父节点同级的节点

    if has parent
         pleft = parent left
         update  left = left+2 where left >pleft
         update right = right+2 where right>pleft
         insert left=pleft +1 ,right = pleft +2
   else 
        insert into left = max(right) +1,  right = left +2
 
 
 事例:
 
父节点1 : 1  2 
插入子节点:父节点1为  1   4 ,子节点1为 2   3 ;
插入子节点:父节点1为  1   6 ,子节点1为 4   5,子节点2为 2  3;
插入父节点:父节点1为  1   6 ,子节点1为 4   5,子节点2为 2  3;父节点2为7  8;
插入子节点:父节点1为  1   8,子节点1为  4   5,子节点2为 6  7,子节点3为2  3;父节点2为 9  10;
 

2、用父节点的right更新,每次更新其父节点 及与其父节点同级的节点建议使用
if has parent
         pright = parent right
         update  left = left+2 where left >= pright
         update right = right+2 where right>= pright
         insert left=pright  ,right = pright + 1
   else 
        insert into left = max(right) +1,  right = left +2
 
 
 事例:
 
父节点1 : 1  2 
插入子节点:父节点1为  1   4 ,子节点1为 2   3 ;
插入子节点:父节点1为  1   6 ,子节点1为 2   3,子节点2为 4  5;
插入父节点:父节点1为  1   6 ,子节点1为 2   3,子节点2为 4  5;父节点2为7  8;
插入子节点:父节点1为  1   8 ,子节点1为 2   3,子节点2为 4  5,子节点3为6  7;父节点2为 9  10;
分享到:
评论

相关推荐

    C#TreeNode控件的使用

    `TreeNode`控件是构建复杂层次结构数据的关键组件之一,通过掌握其核心属性和方法,可以实现多样化的数据展示和交互功能。在实际项目开发中,应根据具体需求灵活运用`TreeNode`的各种特性,以提高用户体验和程序的...

    TreeView Treenode 操作实例

    在这个“TreeView Treenode 操作实例”中,我们将深入探讨如何操作`TreeNode`,包括从数据库读取数据、构建类别树、将树结构写回数据库以及处理节点重命名以避免重复。 首先,让我们了解`TreeView`的基本操作。`...

    Treenode显示或者隐藏图片

    在Windows应用程序开发中,`TreeView`控件是一个常用的组件,用于展示层次结构的数据。它通常用树状结构来表示文件系统、目录结构或其他有层级关系的信息。在这个特定的主题中,“Treenode显示或者隐藏图片”涉及到...

    treenode enhancement

    1. **TreeNode基本概念**:TreeNode是树数据结构的抽象,每个节点通常包含数据、指向父节点的引用和指向子节点的引用(或子节点列表)。通过这些引用,可以遍历整个树结构,进行插入、删除和查找操作。 2. **子节点...

    VSFLEXGRID的TreeNode效果

    5. **交互设计**:为了提高用户体验,可以考虑添加一些额外的功能,如点击TreeNode时展开/Collapse VSFlexGrid,或者通过VSFlexGrid的选择更新TreeNode的状态。 6. **样式和定制**:VSFlexGrid允许高度的定制,包括...

    treenode.rar

    在IT领域,TreeNode是数据结构中的一个重要概念,特别是在树形数据结构中。树是一种非线性的数据结构,它由若干个节点(TreeNode)通过边连接而成,这些节点代表了数据,而边则表示它们之间的关系。TreeNode是构成树...

    树节点控件与数据库(节点 SQL数据库 TreeView TreeNode VB2005)

    "树节点控件与数据库(节点 SQL数据库 TreeView TreeNode VB2005)"这一主题涉及了如何将数据库中的数据与TreeView控件的TreeNode对象相结合,以实现动态数据加载和交互。 1. **TreeView控件**:这是一个Windows ...

    TreeNode.java

    JAVA 拥有层级的List数据转换树形层级结构实体,内含转换方法

    TreeNode-SourceCode.7z

    `TreeNode`类扮演着这个数据结构中节点的角色,同时维护了红黑树的特性。 首先,我们来理解一下红黑树的基本概念。红黑树是一种自平衡二叉查找树,它的每个节点都带有颜色属性,可以是红色或黑色。红黑树遵循以下...

    C# WinForm DataGridView同步更新数据库 TreeView最简单的绑定数据库

    要注意的是,数据库表必须有主键,这样才能保证数据的唯一性并支持`DataGridView`和`TreeView`的正确更新。主键是表中一个或一组列,其值在所有记录中都是唯一的,用于标识一条记录。在进行数据操作时,主键是关键的...

    TreeView数据绑定方法

    在数据绑定的`TreeView`中,可以监听`NodeMouseClick`、`AfterSelect`等事件,实现用户交互时的数据操作,如获取选中节点对应的后台数据、更新数据源等。 ### 性能优化 当数据源很大时,为了提高性能,可以考虑...

    WPF之TreeView绑定数据获取节点数据

    2. **创建数据模板**:为了显示每个节点,我们需要定义一个`HierarchicalDataTemplate`,它告诉`TreeView`如何显示`TreeNode`对象。 ```xml ``` 3. **绑定数据源**:接下来,将`TreeView`的`ItemsSource`属性...

    howto_treenode_orientations_C#_zip_源码

    创建和操作`TreeNode`对象可以实现动态添加、删除和修改树视图中的节点,以及设置节点的文本、图像和自定义数据。 关于`Orientations`,这通常与布局管理有关,特别是指控件或元素的排列方式。在Windows Forms中,...

    用richFaces的<rich:treeNode>标签开发tree

    在实际开发中,`&lt;rich:treeNode&gt;`通常与Java后端数据模型结合,如JavaBeans或Entity Beans,通过EL表达式进行数据绑定。例如,你可以有一个包含`id`、`name`和`children`属性的对象,`children`属性是一个子对象列表...

    asp.net(c#)tree绑定数据

    2. **创建TreeNode**:对于每个要显示的数据项,创建一个TreeNode对象。TreeNode包含了文本、值、链接以及子节点等属性。这些属性可以根据数据源中的字段进行设置。 3. **添加子节点**:如果数据源中的条目有子条目...

    WinForm中动态绑定TreeView数据 收藏.doc

    在Windows Forms(WinForm)应用程序开发中,动态绑定控件数据是一种常见的需求,特别是当数据来自数据库时。...注意,为了实现删除功能,你需要处理删除事件,确保在删除TreeNode时同步更新数据库,反之亦然。

    TreeView控件绑定Excel数据实例(递归思想加载)

    每行Excel数据对应一个TreeNode,如果数据有嵌套关系(比如存在父项和子项),则需要使用递归函数来构建树结构。 递归的基本思路是:对于每一行数据,先检查是否为顶级节点(没有父节点),如果是,则直接添加到...

    TreeView填充数据-加右

    `TreeView`控件允许用户通过节点(TreeNode)来展示数据的层级关系。每个节点可以有子节点,形成树状结构。它通常用于表示文件系统、组织结构或其他具有层级关系的数据。 2. **填充TreeView数据** 填充`TreeView`...

    数据结构 三叉链表表示的二叉树

    在计算机科学中,数据结构是组织和存储数据的方式,它直接影响到程序的效率和性能。本文将深入探讨一种特殊的数据结构表示——三叉链表表示的二叉树。这种表示方式在C++语言中尤为常见,它允许我们高效地创建、插入...

    给Treeview添加数据

    ### 给Treeview添加数据 在本篇内容中,我们将探讨如何从数据库中读取数据并将其添加到Treeview控件中。此方法通常应用于显示具有层级结构的数据,例如组织结构、文件系统等。以下是对原文中代码示例的详细解释及...

Global site tag (gtag.js) - Google Analytics