'list'对象没有属性'next'



我正试图在Python、中创建一个MIddleNode函数

head = [1,2,3,4,5]
class ListNode(object):
def __init__(self, val=0, next=None):
self.val = val
self.next = next
def middleNode(head: ListNode) -> ListNode:
if head.next == None:
return head
num = 0
temp=ListNode(head)
#  finding size of list
while temp!=None:
num = num + 1
temp=temp.next

# assigning middle node number
num=(num/2)+1
# traversing to middle node with head as we are needed to return list from middle node
while num > 1:
head=head.next
num = num -1
return head
middleNode(head)

然而,我不断地得到这个错误和下一个错误。

我错过了什么?

head是一个普通的python列表,而不是链表。

def create_linked_list(lis, node):
if not lis:
return node
newnode = ListNode(lis[-1],node)
create_linked_list(lis[:-1],newnode)

这里有一个递归函数,可以用来创建一个链表。要获得列表[1,2,3,4,5]的等效值,您应该调用

create_linked_list([1,2,3,4],ListNode(5))

此函数返回链表的头,然后可以使用.next 对其进行迭代

最新更新