0

我是 tcl/Itcl 编程的新手。
tcl 或 Itcl 中是否有任何数据结构或为这两者提供的任何包可以帮助我实现下一个结构(见下图)。

数据结构说明:
该数据结构与B-Tree数据结构非常相似。
但是,数据结构的每一级都是不同的类,这意味着类 A 只能有类型B 的子级。
任何级别(节点)中的每个“类类型”除了“指针”之外,还有另一个对该类唯一的数据给这个“节点”的父母和孩子。

我看到有 struct::tree 数据结构,但我真的不知道我是否可以使用这个数据结构来实现我的数据结构,但有这些例外。
除了创建一个“节点基类”和另外 3 个继承自该“节点基类”的类之外,还有什么方法可以实现它,每个类都有唯一的列表?

在此处输入图像描述

4

1 回答 1

1

它可以实现为嵌套字典。
键名当然可以是您想要的任何名称。

对于此示例,C 节点仅具有数据项列表。这可能是另一本字典。

set nodes {
   nodea1 {
      nodeb1 { 
        nodec1 { data1 data2 data3 }
        nodec2  { data1 data2 data3 }
        }
      nodeb2 {
        }
      nodeb3 {
        nodec1 { data1 data2 data3 }
        nodec2  { data1 data2 data3 }
        nodec3  { data1 data2 data3 }
        }
     }
}

puts [dict get $nodes nodea1 nodeb3 nodec2]
于 2018-08-07T14:56:44.987 回答