노드 삭제 기능을 구현하라는 메시지가 나타납니다. 노드 1 개를 삭제합니다.링크 된 노드 삭제 기능
왜 내 노드는 전체 목록 삭제를 삭제합니까?
class Node(object):
def __init__(self, value):
self.value=value
self.next=None
self.prev=None
class List(object):
def __init__(self):
self.head=None # start of list
self.tail=None # end of list
def insert(self,n,x):
if n!=None:
x.next=n.next
n.next=x
x.prev=n
if x.next!=None:
x.next.prev=x
if self.head==None:
self.head=self.tail=x
x.prev=x.next=None
elif self.tail==n:
self.tail=x
def display(self):
values=[]
n=self.head
while n!=None:
values.append(str(n.value))
n=n.next
print ("List: ",",".join(values))
def deleteNode (self,n):
if n.prev!=None:
n.prev.next = n.next
else:
self.head = n.next
if n.next != None:
n.next.prev = n.prev
else:
self.tail = n.prev
if __name__ == '__main__':
listofnodes=List()
listofnodes.insert(None, Node(4))
listofnodes.insert(l.tail,Node(6))
listofnodes.insert(l.head,Node(8))
listofnodes.insert(l.head,Node(5))
listofnodes.insert(l.head,Node(9))
listofnodes.insert(l.head,Node(10))
listofnodes.deleteNode(Node(8)) # I want to delete Node 8 from listofnodes
listofnodes.display()
노드가 나는 그것을 더 요소
어떤 아이디어를 보여줍니다 실행 한 후, 전체 목록이 표시라고 삭제하기 전에
?listofnodes.deleteNode(l,Node(8))
에서
'listofnodes.deleteNode (Node (8))'시도 (여기에 너무 많은 인수가 있음) –
그 비트를 정렬했지만 함수는 선택된 노드가 아닌 모든 노드를 삭제합니다. –