Python中的单向链表(Singly Linked List)实现方法

2023-04-11 00:00:00 python 方法 链表

单向链表是一种数据结构,它由一个头节点和一串有序的节点组成。每个节点包含一个值和一个指向下一个节点的指针。头节点不包含实际的值,它仅仅是链表的起点。

Python中的单向链表可以通过自定义类来实现。一个链表节点可以表示如下:

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

其中,value属性用于存储节点的值,next属性用于存储指向下一个节点的指针。如果该节点为链表的最后一个节点,则next属性为None。

接下来定义单向链表类:

class SinglyLinkedList:
    def __init__(self):
        self.head = None

    def append(self, value):
        new_node = Node(value)
        if not self.head:
            self.head = new_node
        else:
            current_node = self.head
            while current_node.next:
                current_node = current_node.next
            current_node.next = new_node

    def display(self):
        values = []
        current_node = self.head
        while current_node:
            values.append(current_node.value)
            current_node = current_node.next
        return values

其中,SinglyLinkedList类包含一个头节点,它的初始化函数将头节点设置为None。append(value)方法用于在链表末尾添加新节点。display()方法用于显示链表中所有节点的值,返回一个列表。

以下是具体的代码演示:

linked_list = SinglyLinkedList()
linked_list.append('p')
linked_list.append('idancode.com')
linked_list.append('皮蛋编程')
print(linked_list.display())  # 输出 ['p', 'idancode.com', '皮蛋编程']

相关文章