我必须根据以下描述编写程序。
笑声停车场包含一条可容纳十辆汽车的单车道。汽车到达车库的南端,从北端出发。如果客户到达拿起不是最北端的汽车,他汽车北面的所有汽车都会被搬出,他的汽车被赶出去,而其他汽车的恢复顺序与他们原来的顺序相同。每当汽车离开时,南方的所有汽车都向前移动。因此,所有空间都在车库的南部。编写一个python程序来读取一组输入行。每行包含“a”到达或“d”出发和车牌号码。假设汽车按照输入指定的顺序到达和离开。每次汽车到达或离开时,程序都应打印一条消息。当汽车到达时,按摩应指明车库是否有空间。如果没有汽车的空间,汽车会等到有空间或直到为汽车读取出发线。当房间可用时,应打印另一个按摩。当汽车离开时,按摩应该包括汽车在车库内移动的次数(包括出发本身但不是到达),如果汽车离开等候线,这个数字为0。
任何人都可以告诉我从哪里开始......应该使用堆栈和队列来完成。如果你能提交一个非常好的代码
答案 0 :(得分:0)
首先,我要了解堆栈和队列是什么:http://en.wikipedia.org/wiki/Stack_(abstract_data_type)和http://en.wikipedia.org/wiki/Queue_(abstract_data_type)
然后我会阅读Python的列表类型:http://docs.python.org/2/tutorial/datastructures.html#more-on-lists。在那里,本教程讨论了如何将列表用作堆栈和队列(并引用了collections
模块作为deque,这是一个很好的队列实现。