【发布时间】:2018-01-27 09:47:16
【问题描述】:
我正在阅读有关 Recursive Data Type 的内容,其中引用了以下内容:
在计算机编程语言中,递归数据类型(也称为递归定义、归纳定义或归纳数据类型)是一种数据类型,其值可能包含相同类型的其他值
我知道链表和树可以是递归数据类型,因为它包含相同数据结构的较小版本,就像树可以有子树一样。
但是,我真的很困惑,因为固定大小的数组不是也包含子数组吗?哪个还是同一类型?
有人可以举例说明是什么让数据结构递归的吗?
【问题讨论】:
-
` 不是固定大小的数组,也可能包含子数组,但这不是设计使然。按照设计,
class Node { public Node Parent; public Node[] Children; }一个节点有一个节点作为它的父节点,一个节点数组作为它的子节点。根据定义,它会递归,不仅仅是因为它有一个包含另一个节点的数组。
标签: recursion linked-list tree graph-algorithm