假设我们有一家汽车租赁公司,我们有多辆相同类型的汽车。当用户预订汽车时,他不会预订特定的汽车,而是预订其中一种汽车。
哪种算法最适合在时间表上显示/排列/排序预订,如下所示:
/*
* | 09 - 10 - 11 - 12 - 13 - 14 - 15 - 16 - 17 |
* | A A A A A |
* | D D D B B B |
* | D D D B B B |
* | C C C C |
* | C C C C |
* | C C C C |
* */
每条线代表相同类型的汽车,每个字母代表1个预订(1个用户可以预订多辆汽车)。系统内置检测功能,如果没有车辆就不能预订车辆(例如从11到14,没有车可用)。
有多种方法可以对预订进行排序,但是一个总是返回相同顺序并且适用于所有(或接近)不同情况的算法(或一些关于如何使用的指针)会很棒。