如何使用Python实现链表的求链表的长度操作

2023-04-11 00:00:00 链表 长度 如何使用

链表是一种常用的数据结构,它由一系列节点组成,每个节点包含数据和指向下一个节点的指针。链表的长度指的是节点的个数。

下面是使用Python实现链表的求链表长度的代码示例:

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

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

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

    def get_length(self):
        count = 0
        current = self.head
        while current is not None:
            count += 1
            current = current.next
        return count

# 示例代码
llist = LinkedList()
llist.add_node('p')
llist.add_node('i')
llist.add_node('d')
llist.add_node('a')
llist.add_node('n')
llist.add_node('c')
llist.add_node('o')
llist.add_node('d')
llist.add_node('e')
llist.add_node('.')
llist.add_node('c')
llist.add_node('o')
llist.add_node('m')
print("链表的长度为:", llist.get_length())

输出结果为:链表的长度为: 14

以上代码中,我们实现了一个简单的链表和求取链表长度的方法。首先定义了一个Node类,表示链表中的每个节点,包含data和next两个属性。然后定义了LinkedList类,表示整个链表。其中包括一个头结点head属性和两个方法,一个是添加节点的add_node()方法,另一个是求链表长度的get_length()方法。

在get_length()方法中,我们使用了一个count变量来计数,从head开始遍历整个链表,每访问一个节点就将count加1,直到遍历结束,返回计数器的值即可。

最后,我们创建了一个示例链表,并输出其长度为14。

相关文章