Python 链表创建与打印:代码实现及示例

本文将介绍如何使用 Python 代码创建和打印链表,并提供示例代码和详细解释。

代码实现

class ListNode:
    def __init__(self, val=0, next=None):
        self.val = val
        self.next = next

def createLinkedList(nums):
    dummy = ListNode()
    curr = dummy
    for num in nums:
        curr.next = ListNode(num)
        curr = curr.next
    return dummy.next

def printLinkedList(head):
    curr = head
    while curr:
        print(curr.val, end=' ')
        curr = curr.next
    print()

while True:
    n = int(input())
    if n == 0:
        break
    nums = list(map(int, input().split()))
    head = createLinkedList(nums)
    printLinkedList(head)

代码解释

  1. 创建链表:
    • createLinkedList(nums) 函数使用给定的数字列表 nums 创建一个链表。
    • 它首先创建一个哑节点 dummy,然后使用 curr 指针遍历列表,将每个数字添加到链表中。
    • 最后返回链表的头部节点。
  2. 打印链表:
    • printLinkedList(head) 函数用于打印链表的元素。
    • 它使用 curr 指针遍历链表,并打印每个节点的值。
  3. 主循环:
    • 主循环不断读取用户输入的链表长度 n 和元素列表。
    • n 为 0 时,循环结束。
    • 对于每个输入的链表,程序调用 createLinkedList 创建链表,并调用 printLinkedList 打印链表的元素。

使用方法:

程序运行后,用户需要输入以下信息,每组数据有两行:

  1. 链表长度 n
  2. 链表元素列表,元素之间用空格分隔

例如:

3
1 2 3
2
4 5
0

输入 0 结束程序,输出结果如下:

1 2 3 
4 5 

该代码实现了一种简单的方法来创建和打印链表,可以作为学习链表的基本操作的参考。

Python 链表创建与打印:代码实现及示例

原文地址: https://www.cveoy.top/t/topic/SDP 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录