餐厅餐桌分配的数据结构和算法?
在我过去的一次采访中,我被要求描述一下你如何用餐桌和椅子模拟餐厅,以及你如何在到达时分配给客人以及以前做出的预订。
例如,当一组20人进来时,您必须将这些表格合并为一个表格,以使其成为一个组。
当我试图用简单的面向对象的设计术语进行建模时,他阻止了我,并询问是否有任何特定的数据结构或算法可用于解决此问题。
我不知道有什么? 有人能给我一个指针吗?
我想不出任何特定的算法,我的意思是说,看看你的想法可能只是一个问题,而不是一个具有特别合适的解决方案的问题。
无论如何,在我看来,表的物理分布是至关重要的:你只能连接彼此接近的表。 通常情况下,您不能将坐着的人移动到不同的桌子上,也不能将整个餐厅的桌子拖得很远。 这需要一个模拟表格物理分布的数据结构,即一个具有连接节点的网络。 这可能会变得很复杂,包括例如桌子之间的距离,网与分区之间的距离等。
要查找一个空闲表,或者获取或释放一个空闲表,因为典型的表的数量很小,您可以按顺序迭代。 更多的是学术性的练习,你可能想要考虑一些更加适合这个问题的东西,但是没有足够的要求来做出有关这个问题的决定。
链接地址: http://www.djcxy.com/p/26953.html上一篇: data structure and algorithm for table allocations in restaurant?
下一篇: Choice of programming language for learning data structures and algorithms