Ich bin neu in der Programmierung im Allgemeinen und habe gerade begonnen, Python zu verwenden. Ich habe vor kurzem über verknüpfte Listen gelernt, und ich hatte Probleme, eine Funktion zu verwenden, um ein Element am Ende meiner Liste hinzuzufügen. Die unten aufgelistete Funktion namens addToTail funktioniert nicht und gibt mir den Fehler: TypeError: Objekt 'NoneType' unterstützt keine Artikelzuweisung. Jede Hilfe würde sehr geschätzt werden, danke.Funktion zum Hinzufügen von Element am Ende einer verketteten Liste
def addToHead(myList, value):
node = {}
node['data'] = value
node['next'] = myList
return node
def addToTail(myList, value):
ptr = myList
while ptr != None:
ptr = ptr['next']
node = {}
node['data'] = value
node['next'] = None
ptr['next'] = node
return myList
def printList(myList):
ptr = myList
while ptr != None:
print(ptr['data'])
ptr = ptr['next']
print('None')
def createList(pythonList):
linkedList = None
for i in pythonList:
linkedList = addToHead(linkedList, i)
return linkedList
firstList = createList([5, 10, 15])
addToTail(firstList, 10)
printList(firstList)
Da Sie Ihren Zeiger verstärken, Sie oben enden zeigt auf 'None', immer bevor Sie versuchen, hinzufügen ein neues Element. Sie müssen einen abschließenden Zeiger umherbewegen, der auf das vorherige letzte Element zeigt, damit dieses Element auf Ihren neuen letzten Punkt zeigt. – JohanL