我的代碼如下,用於刪除鏈接列表中的節點不起作用,因爲它正在刪除我想要刪除的索引的錯誤索引。從鏈接列表中刪除節點不起作用
class Node:
def __init__(self,data):
self.data=data
self.next=None
class LinkedList:
def __init__(self):
self.head=None
self.tail=None
def Addnode(self,data):
new_node=Node(data)
if self.head==None:
self.head=new_node
if self.tail!=None:
self.tail.next=new_node
self.tail=new_node
def removenode(self,index):
new_n=self.head
count=0
while count!=index:
new_n=new_n.next
count+=1
new_n.next=new_n.next.next
def Printlist(self):
node=self.head
while node!=None:
print(node.data)
node=node.next
List=LinkedList()
List.Addnode(1)
List.Addnode(2)
List.Addnode(3)
List.Addnode(4)
List.removenode(1)
List.Printlist()
所以這應該刪除節點是在索引1,它是2,而是它消除3,並打印和1,2,4-不甚至5任?我很困惑,爲什麼會發生這種情況?
也許增加編程語言標籤將有助於 –
這是Python嗎? –
是的,對不起, – garfieldluva