首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何使用2个LinkedLlsts重载+=

重载+=操作符可以用于将一个LinkedList的元素添加到另一个LinkedList中。下面是使用两个LinkedLists重载+=操作符的示例代码:

代码语言:txt
复制
class LinkedList:
    def __init__(self):
        self.head = None

    def append(self, data):
        new_node = Node(data)
        if self.head is None:
            self.head = new_node
        else:
            current = self.head
            while current.next:
                current = current.next
            current.next = new_node

    def __iadd__(self, other):
        current = other.head
        while current:
            self.append(current.data)
            current = current.next
        return self

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

# 创建两个LinkedLists
list1 = LinkedList()
list2 = LinkedList()

# 向list1中添加元素
list1.append(1)
list1.append(2)
list1.append(3)

# 向list2中添加元素
list2.append(4)
list2.append(5)
list2.append(6)

# 使用+=操作符将list2的元素添加到list1中
list1 += list2

# 打印合并后的list1
current = list1.head
while current:
    print(current.data)
    current = current.next

这段代码中,我们定义了一个LinkedList类和一个Node类。LinkedList类包含一个头节点和一些操作方法,如append用于向链表末尾添加元素。Node类表示链表中的节点,包含一个数据字段和一个指向下一个节点的指针。

在LinkedList类中,我们重载了+=操作符,实现了将一个LinkedList的元素添加到另一个LinkedList中的功能。在重载函数__iadd__中,我们遍历另一个LinkedList的节点,并将每个节点的数据添加到当前LinkedList的末尾。

使用这个重载后的+=操作符,我们可以将两个LinkedLists合并为一个,并打印合并后的结果。

请注意,这里的示例代码仅用于说明如何使用2个LinkedLists重载+=操作符,实际应用中可能需要根据具体情况进行适当修改。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

领券