最新公告
  • 欢迎您光临信息学奥赛网,一个优质的信息学编程题库和信息学编程学习资源专业网站。欢迎加入VIP
  • 单链表

    正文概述 陈老师   2026-01-20 15:39:37  

    题目描述

    设计一个简单的单链表,包含以下功能:

    1. 向链表末尾添加一个节点。

    2. 删除链表中的第一个值为 xx 的节点,若不存在值为 xx 的节点,则不做操作。

    3. -> 间隔并打印链表中的所有节点值(链表最终指向 NULL)。

    输入格式

    第一行,一个整数 n (1n100)n~(1 \leq n \leq 100) 表示单链表中的初始节点数量。

    第二行,nn 个整数 ai (1ai100)a_i~(1 \leq a_i \leq 100),表示初始节点的值(从头至尾)。

    第三行,一个整数 m (1m100)m~(1 \leq m \leq 100),表示接下来你要完成 mm 个操作。

    接下来 mm 行,每行一个或两个整数,第一个整数表示执行第几个操作。若第一个整数为 33,则该行只有此一个整数,请你执行 33 操作并且换行;若第一个整数为 1122,则其后还有一个由空格间隔的整数 xx,表示你将要添加或者删除的节点。

    输出格式

    第一行,添加完初始节点后执行 33 操作输出链表。

    接下来若干行,若应执行的操作中有 33 操作时,则输出当前链表。

    注:每次执行完 33 操作后均要换行。

    输入输出样例

    5
    5 7 8 4 12
    6
    1 5
    3
    2 7
    3
    2 5
    3
    
    5 -> 7 -> 8 -> 4 -> 12 -> NULL
    5 -> 7 -> 8 -> 4 -> 12 -> 5 -> NULL
    5 -> 8 -> 4 -> 12 -> 5 -> NULL
    8 -> 4 -> 12 -> 5 -> NULL
    
    5
    5 7 8 4 12
    6
    1 5
    3
    2 7
    3
    2 999
    3
    
    5 -> 7 -> 8 -> 4 -> 12 -> NULL
    5 -> 7 -> 8 -> 4 -> 12 -> 5 -> NULL
    5 -> 8 -> 4 -> 12 -> 5 -> NULL
    5 -> 8 -> 4 -> 12 -> 5 -> NULL
    
    5
    5 7 8 4 12
    6
    2 5
    2 7
    2 8
    2 4
    2 12
    3
    
    5 -> 7 -> 8 -> 4 -> 12 -> NULL
    NULL
    
    信息学奥赛网,一个优质的信息学奥赛学习资源平台!
    信息学奥赛网 » 单链表