"Circular" list 是一种 "linear list" 吗?
Is "Circular" list a kind of "linear list"?
我不确定哪种 "list" 可以被视为 "linear list"。
例如,如果概念 "linear" 意味着我们只有一个规则来说明什么是 "next" 元素:那么 "Circular list" 也应该是 "linear list"?
如果是,那么"general lists",虽然可以是高维结构,但是只要我们给出如何找到"next"元素的规则,是否可以认为是[=19] =]?
我不确定你问这个问题的背景是什么,但我对 "circular list" 在一般计算机数据结构术语中的理解是一个列表,其中最后一个元素指向第一个元素,所以该列表可以无限遍历。这在某些应用程序中很有用。
循环列表是线性数据结构。但是,仅仅给出寻找下一个元素的规则是不够的:为了使结构是线性的,单个元素不能是多个元素的下一个元素。
例如下面的结构是不是线性的:
虽然每个节点最多有一个后继节点,但节点 "C" 是另外两个节点 - "B" 和 "F" 的后继节点。因此,该结构不能被认为是线性的。
可以找到线性数据结构列表 here。
是的,你是对的,线性链接意味着你有一个特定的方法来到达唯一的下一个节点
由于循环列表的实现略有不同,即
None 的指针指向 NULL 并且因为它是无限的
容易混淆...
但是
Circular Linked List一般称为linear Linked List only
注意
一个树被称为非线性数据类型,因为一个节点的下一个节点可能不止一个节点所以不是唯一的下一个节点 因此**树是非线性的例子**
我不确定哪种 "list" 可以被视为 "linear list"。
例如,如果概念 "linear" 意味着我们只有一个规则来说明什么是 "next" 元素:那么 "Circular list" 也应该是 "linear list"?
如果是,那么"general lists",虽然可以是高维结构,但是只要我们给出如何找到"next"元素的规则,是否可以认为是[=19] =]?
我不确定你问这个问题的背景是什么,但我对 "circular list" 在一般计算机数据结构术语中的理解是一个列表,其中最后一个元素指向第一个元素,所以该列表可以无限遍历。这在某些应用程序中很有用。
循环列表是线性数据结构。但是,仅仅给出寻找下一个元素的规则是不够的:为了使结构是线性的,单个元素不能是多个元素的下一个元素。
例如下面的结构是不是线性的:
虽然每个节点最多有一个后继节点,但节点 "C" 是另外两个节点 - "B" 和 "F" 的后继节点。因此,该结构不能被认为是线性的。
可以找到线性数据结构列表 here。
是的,你是对的,线性链接意味着你有一个特定的方法来到达唯一的下一个节点
由于循环列表的实现略有不同,即
None 的指针指向 NULL 并且因为它是无限的
容易混淆...
但是 Circular Linked List一般称为linear Linked List only
注意
一个树被称为非线性数据类型,因为一个节点的下一个节点可能不止一个节点所以不是唯一的下一个节点 因此**树是非线性的例子**