自学内容网 自学内容网

单链表简单操作

键盘输入一组元素,以0做结束输入的标记,建立一个带头结点的单向链表(无序,且值域为整型),遍历单向链表,显示相应元素。

输入格式:

1 2 3 4 5 6 7 8 0

输出格式:

1 2 3 4 5 6 7 8

输入样例:

在这里给出一组输入。例如:

1 2 3 5 7 8 0

输出样例:

在这里给出相应的输出。例如:

1 2 3 5 7 8 

# 定义链表节点类
class Node:
    def __init__(self, data=None):
        self.data = data  # 存储数据
        self.next = None  # 指向下一个节点

# 定义单向链表类
class LinkedList:
    def __init__(self):
        self.head = Node()  # 初始化头结点

    # 添加节点到链表尾部
    def append(self, data):
        new_node = Node(data)
        cur = self.head
        while cur.next:  # 遍历到链表的最后一个节点
            cur = cur.next
        cur.next = new_node

    # 遍历链表并打印元素
    def display(self):
        cur = self.head.next  # 跳过头结点
        while cur:
            print(cur.data, end=" ")
            cur = cur.next
        print()

# 主程序
def main():
    linked_list = LinkedList()  # 初始化带头结点的单向链表

    # 获取用户输入
    user_input = input().split()
    
    # 将输入的数字添加到链表,遇到0结束
    for num in user_input:
        num = int(num)
        if num == 0:
            break
        linked_list.append(num)

    # 遍历链表并显示元素
    linked_list.display()

    return 0  # 返回值为0

# 调用主程序
main()

原文地址:https://blog.csdn.net/weixin_73699318/article/details/142706316

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!