打印了双重链接列表的内容

问题描述 投票:0回答:1
方法的双重链接列表的内容。我遇到的问题是它返回值的内存位置,而不是值本身。

这是我的节点类。 类节点: def __init__(self, initial_data, prev = None, next = None): self._initial_data = initial_data self._prev = prev self._next = next

我的

str

函数是:
    def __str__(self):
        s = "[" 
        node = self._head 
        while node is not None:
            s += str(node._initial_data)
            if node._next:  
               s += "->"
           node = node._next 
        s += "]"
        return s

如果您下次发布完整的课程,这将很有帮助,但是我假设您有2堂课。一个节点和一个双重链接列表。这是我如何做的一个示例:

class Node:
    def __init__(self, data, prev=None, next=None):
        self.data = data
        self.prev = prev
        self.next = next

class DoublyLinkedList:
    def __init__(self):
        self.head = None
    
    def append(self, data):
        new_node = Node(data)
        
        if not self.head:
            self.head = new_node
            return
            
        current = self.head
        while current.next:
            current = current.next
            
        current.next = new_node
        new_node.prev = current
    
    def __str__(self):
        values = []
        current = self.head
        
        while current:
            values.append(str(current.data))
            current = current.next
            
        return "[" + "->".join(values) + "]"

python linked-list doubly-linked-list
1个回答
0
投票
希望这有帮助!


最新问题
© www.soinside.com 2019 - 2025. All rights reserved.