【发布时间】:2011-12-23 16:42:09
【问题描述】:
我有一个列表集合,每个列表包含大约 6 到 7 个值。喜欢,
list1 = 2,4,7,4,9,5
list2 = 4,3,7.3,9,8,1.2
list3 = 2,2.4,7,9,8,5
list4 = 9,1.6,4,3,4,1
list5 = 2,5,7,9,1,4
list6 = 6,8,7,2,1,5
list7 = 4,2,5,2,1,3
现在我想用 index1 作为主要,index3 作为次要,index2 作为第三级,依此类推。也就是说,输出应该是这样的:
2,2.4,7,9,8,5
2,4,7,4,9,5
2,5,7,9,1,4
4,2,5,2,1,3
6,8,7,2,1,5
9,1.6,4,3,4,1
我希望首先对 index1 的列表顺序进行排序,如果 index1 的值相同,则在 index3 上进行排序,如果与 index2 上的值相同。这里列表的数量较少,可以增加到 20,索引也可以增加到 20。
我想知道的算法和iTunes歌曲排序的算法是一样的,同一张专辑的歌曲先排序,然后是艺术家,然后是排名,然后是名称。如果专辑名称相同,则对专辑进行排序,如果相同,则对艺术家进行排序,然后按排名等等。代码可以在 C/C++/tcl/shell 中。
【问题讨论】:
-
真的会是 index3 在 index 2 之前吗?如果是,那么你的解释中的等等不足以解释排序谓词。