飞机到达目的地后,游客的行李会进入传送带,由游客自行在取行李处拿取,虽然机场出口处,有工作人员在检查,但也难免会出现拿错行李的事情。请为机场设计一个游客取行李的程序,游客在取行李处,输入自己的身份证号后才能取到自己的行李。 要求: 使用线性表实现行李存储,行李信息表如下: 行李编号 行李航班 姓名 身份证号 行李状态 001 UC8866 张里 510199909090002 到达 002 NI7755 李丽 510200012290001 已取 003 MQ9090 王一 510198810090003 未取 004 BU8080 赵山 610197708080022 未到达 游客输入身份证号,即可获取对应行李箱状态,并领取本人行李箱。 显示欢迎类语句,为游客增加美好的体验感。 代码符合规范,正确、易读、易操作。 分析代码的运行效率,如时间复杂度和空间复杂度。
时间: 2024-02-25 21:58:18 浏览: 115
以下是一个简单的示例程序,用于实现上述需求。这里使用了Python语言,使用了字典来存储行李信息,使用列表来实现存储行李的顺序,以便于实现线性表的特性。具体实现如下:
```python
# 行李信息列表
luggage_info = {
"001": ["UC8866", "张里", "510199909090002", "到达"],
"002": ["NI7755", "李丽", "510200012290001", "已取"],
"003": ["MQ9090", "王一", "510198810090003", "未取"],
"004": ["BU8080", "赵山", "610197708080022", "未到达"]
}
# 顺序存储行李的列表
luggage_list = ["001", "002", "003", "004"]
# 欢迎语句
print("欢迎来到机场取行李!")
# 输入身份证号
id_card = input("请输入您的身份证号:")
# 遍历顺序存储行李列表,查找对应的身份证号和行李状态
for luggage_id in luggage_list:
if luggage_info[luggage_id][2] == id_card:
print("您的行李状态为:", luggage_info[luggage_id][3])
# 如果行李状态为“已取”,则从行李列表中删除该行李
if luggage_info[luggage_id][3] == "已取":
luggage_list.remove(luggage_id)
break
else:
print("未找到对应的行李信息,请确认身份证号是否正确。")
# 再次输出行李列表,确认是否已经删除已取行李
print("当前行李列表为:", luggage_list)
```
时间复杂度:最坏情况下需要遍历整个行李列表,因此时间复杂度为O(n)。
空间复杂度:需要存储行李信息的字典和顺序存储行李的列表,空间复杂度为O(n)。
阅读全文