自引用列表的用途

发布于 2024-09-24 05:04:08 字数 278 浏览 9 评论 0原文

我知道可以用 Python 等语言创建自引用列表:

>>> my_list = [1,2]
>>> my_list.append(my_list)
>>> print my_list
[1,2,[...]]
>>> print my_list[0]
1
>>> print my_list[2]
[1,2,[...]]

哪些算法受益于自引用列表?我想不出一个。

谢谢。

I know it is possible to create a self referencing list in languages like Python:

>>> my_list = [1,2]
>>> my_list.append(my_list)
>>> print my_list
[1,2,[...]]
>>> print my_list[0]
1
>>> print my_list[2]
[1,2,[...]]

What algorithms benefit from self referencing lists? I cannot think of one.

Thanks.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

明明#如月 2024-10-01 05:04:08

当使用数据结构表示图时,可能会导致自引用列表,并且一般来说,循环数据结构。

例如,考虑一下图的这种简单表示:每个节点要么是一个原子值,要么是它链接到的节点列表。圆圈可能会导致一个列表包含另一个包含该列表的列表。自环,即从节点到自身的边,将导致自引用列表。

Self-referencing lists, and, generally speaking, circular data structures, can be caused when representing a graph using data structures.

For example, consider this naive representation of a graph: Each node is either an atomic value, or a list of nodes that it is linked to. A circle may cause a list to contain another list that contains the list. A self-circle, i.e., an edge from a node to itself, will cause a self-referencing list.

本宫微胖 2024-10-01 05:04:08

如果您只是询问列表,那么我现在想不出什么办法,除了在建模为列表的数据结构中递归创建/搜索之外。

但是自引用的一个应用可能是这个 Python 中的自引用类定义

If you are asking just about lists, then I can't think of something right now, except for maybe recursively creating/searching in a data structure modeled as list.

But one application of a self-referencing could be this Self Referencing Class Definition in python

雨夜星沙 2024-10-01 05:04:08

大多数递归问题定义使用某种自引用对象或具有自引用定义的数据。

我会添加维基百科链接,因为它提供了很好的阅读:

其他关于 SO

Most recursive problem definition uses some kind of self refrential objects or a data with self-referential definition.

I would add the wikipedia link as it provides a good readup:

Others on SO

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文