我对tcl/Itcl编程很陌生。
在tcl或Itcl中是否有任何数据结构,或者为这两个包提供的包可以帮助我实现下一个结构(见下图)。
对数据结构的解释:
这种数据结构非常类似于B-树数据结构.
但是,数据结构的每个级别都是不同的类,这意味着A类只能拥有B类的子级。
任何级别(Node)中的每个“类类型”除了指向该"Node“的父级和子级的”指针“之外,还具有该类特有的另一个数据。
我看到了struct::tree数据结构,但是我不知道是否可以使用这个数据结构来实现我的数据结构(除了这些例外)。
除了创建一个“节点基类”和另外3个继承自该“节点基类”的类之外,还有其他方法来实现它吗?

发布于 2018-08-07 14:56:44
它可以作为嵌套字典来实现。
当然,关键的名字可以是你想要的。
对于这个例子,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]https://stackoverflow.com/questions/51720890
复制相似问题