题目
模拟链表删除操作:从序列中查找并删除第一个等于 x 的元素,输出删除后的列表。
输入格式:第一行输入元素个数 n;第二行输入 n 个整数;第三行输入待删除的值 x。
输出格式:一行输出删除首个目标值后的所有整数,空格分隔,末尾换行。
数据范围与约定:1 ≤ n ≤ 200。
思路与算法
1. 删除首个匹配项
使用 a.remove(x) 只会移除第一个值为 x 的项。
2. 保持后续相同值
区分删除所有匹配项与仅删除第一个匹配项的逻辑差异。
完整程序
n = int(input())
a = list(map(int, input().split()))
x = int(input())
# 模拟链表节点删除:仅删除第一个等于 x 的节点
if x in a:
a.remove(x)
print(" ".join(map(str, a)))运行示例
输入:
4
1 2 3 2
2输出:
1 3 2