实现单链表



我遇到了许多教程,这些教程定义了节点类,没有更多内容。我想创建一个类(很像python的本机列表数据类型(,它可以接收可变数量的参数,并递归生成节点实例作为其中的支持类属性。

来自教程:

# Singly linked list
class Node():
def __init__(self,value):
self.value = value
self.nextnode = None
a = Node(1)
b = Node(2)
c = Node(3)
a.nextnode = b
b.nextnode = c

我不确定是否需要继承;我想我需要为下面值中的每个元素递归创建节点对象。但我确定如何实现这一点。

class LinkedList():
def __init__(self,*values):
# insert code

我所问的问题是否超出了求职面试问题中出现"链表"时的预期?我可能只是感到困惑。

编辑:我遇到了这个链接 Python's List是如何实现的?并阅读 Python 的本机列表是动态数组,也许与我之前想象的不太相似。

请参阅这篇文章。跳到"带有哨兵的循环双链表"部分。它介绍了如何自动生成节点,而无需像a,b,c = Node(1), Node(2), Node(3)那样显式调用它们

相关内容

  • 没有找到相关文章

最新更新