首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 软件管理 > 软件架构设计 >

The Nested Model 树形构造

2012-10-09 
The Nested Model 树形结构先把树按水平的方式摆开,如下图? 然后按前序遍历的方法,为每一个结点编号,每一

The Nested Model 树形结构

先把树按水平的方式摆开,如下图
The Nested Model 树形构造
? 然后按前序遍历的方法,为每一个结点编号,每一个结点都有左、右的编号,根结点从1开始开始计算。我们分别把左右编号称为左值和右值。
? 根据前序遍历的规律,我们可以知道,每一个结点的子结点的左值比父结点左值大而比父结点的右值小。例如 Fruit(2,11) 的子结点 Red(3,6)、Cherry(4,5)、 Yellow(7,10)、Banana(8,9) ,可以看到Red、Cherry、Yellow、Banana的左值均比Fruit大,而右值均比Fruit小。
数据库设计如下:




常用到的SQL语句:

返回完整的树(Retrieving a Full Tree)

LOCK TABLE nested_category WRITE;SELECT @myLeft := lft, @myRight := rgt, @myWidth := rgt - lft + 1  FROM nested_category WHERE name = 'GAME CONSOLES';DELETE FROM nested_category WHERE lft BETWEEN @myLeft AND @myRight;UPDATE nested_category SET rgt = rgt - @myWidth WHERE rgt > @myRight;UPDATE nested_category SET lft = lft - @myWidth WHERE lft > @myRight;UNLOCK TABLES;

?

?

热点排行