假设一个病人的严重等级有1,2和3。根据患者的严重程度和到达时间对患者进行排序的最佳算法是什么,如果两个患者的严重程度相同,那么使用到达时间来比较。
例如:
Patient name Seriousness Arrival time
Abby 3 7:01AM
Ally 3 7.08AM
Alicia 1 7.10AM
Abbygal 2 7.14AM
Annie 1 7.16AM
排序后得到这样的结果:
Patient name Seriousness Arrival time
Alicia 1 7.10AM
Annie 1 7.16AM
Abbygal 2 7.14AM
Abby 3 7:01AM
Ally 3 7.08AM
要对链表进行排序,最常用的方法是合并排序,因为它很容易通过链表实现,并且它是最好的基于比较的排序算法之一。
当你说如果两个病人的严重程度相同,那么到达时间是用来比较的,这意味着你需要一个稳定的排序,而合并排序是稳定的,所以试一试。