我尝试将链接添加到链接列表,但是程序将Nodes作为整数而不是Node plz帮助我解决问题
class Node(object):
def __init__(self, data):
self.data = data
self.next = None
class LinkedList(object):
def __init__(self):
self.head = None
def push(self, new_data):
new_node = Node(new_data)
new_node.next = self.head
self.head = new_node
def add_link(self, new_link, after_link):
new_link = Node(new_link)
new_link.next = after_link.next
after_link.next = new_link
def printList(self):
temp = self.head
while(temp):
print temp.data,
temp = temp.next
llist = LinkedList()
llist.push(20)
llist.push(4)
llist.push(15)
llist.push(85)
print "Given Linked List"
llist.printList()
llist.add_link(35, 4)
print "\nAfter adding Link new Linked List"
llist.printList()
错误发生在new_link.next = after_link.next
AttributeError:'int'对象没有属性'next'
答案 0 :(得分:0)
您必须创建Node类型的对象,然后在其中传递数据。
node_obj = Node(34,4)
此外,在函数add_link(self, new_link, after_link)
中,new_link和after_link的参数均为Node类型。
答案 1 :(得分:0)
您只需在添加链接功能中做些改动。
def add_link(self, new_link, after_link):
new_link = Node(new_link)
after_link=Node(after_link)
new_link.next = after_link.next
after_link.next = new_link
这是因为您要将一个整数(after_link)传递给该函数,然后使用after_link.next,这是不可能的,因为after_link是整数。因此,首先您必须将Node的数据作为after_link整数>