遍历python中的listnode



有人能帮我如何在python中遍历下面给定的listnode吗。我已经编写了这个命令,并且正在得到这样的输出。

list1=[1,2,4]

命令:-

print(list1)
print(list1.val)
print(list1.next.val)

输出:-

ListNode{val: 1, next: ListNode{val: 2, next: ListNode{val: 4, next: None}}}
1
2

要获得问题末尾列出的输出,您需要创建一个链表。例如,如果您定义以下类:

class ListNode:
def __init__(self, val, nxt=None):
self.val = val
self.next = nxt
def __repr__(self):
return f"ListNode{{val: {self.val}, next: {self.next}}}"

如果你定义list1如下:

list1 = ListNode(1, ListNode(2, ListNode(4, None)))

然后;命令";将给出您列出的输出。

列表到链接列表

如果你想从列表[1,2,4]创建上面的链接列表,那么使用这个函数:

def createLinkedList(values):
head = None
for val in reversed(values):
head = ListNode(val, head)
return head

现在,您可以将纯列表转换为链接列表,如下所示:

list1 = createLinkedList([1,2,4])

将列表链接到列表

如果你想做相反的事情,从链接列表中创建一个标准列表,那么定义这个函数:

def linkedListIterator(head):
while head:
yield head.val
head = head.next

现在,如果你有一个链表,你可以把它传递给上面的函数。例如:

list1 = createLinkedList([1,2,4])
lst = list(linkedListIterator(list1))

lst将是[1,2,4]

如注释中所述,您似乎混淆了listsingly linked list

使用提供的列表,您只需迭代for loop,如下所示:

list1=[1,2,4]

for L in list1:
print(L)

哪个输出:

1
2
4

有关链接列表,请参阅:https://www.tutorialspoint.com/python_data_structure/python_linked_lists.htm

相关内容

  • 没有找到相关文章

最新更新