链表是由一系列节点组成的元素集合,每个节点包含两部分,数据域item和指向下一个节点的指针next,通过节点之间的相互连接,最终串联成一个链表。

当一个序列中只含有指向它的后继结点的链接时,就称该链表为单链表。

代码示例

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

def print_link(node):
    while node:
        print(node.item, end=' ')
        node = node.next

# 直接定义
a = Node(1)
b = Node(2)
c = Node(3)
a.next = b
b.next = c
print_link(a)

# 头插法
def create_link_head(lst):
    head = Node(lst[0])
    for elem in lst[1:]:
        node = Node(elem)
        node.next = head
        head = node
    return head

head = create_link_head(['a','b','c'])
print_link(head)

# 尾插法
def create_link_tail(lst):
    tail = head = Node(lst[0])
    for elem in lst[1:]:
        node = Node(elem)
        tail.next = node
        tail = node
    return head

head = create_link_tail(['A', 'B', 'C'])
print_link(head)

本文为 陈华 原创,欢迎转载,但请注明出处:http://www.ichenhua.cn/read/320