【发布时间】:2017-06-11 19:29:44
【问题描述】:
我有一个结构非常奇怪的 csv 文件。列字段由数字组成,行部分由第一个列字段分组,但不完全分组。 例如,如果列数据是 {number1, number2, number3},则文件将如下所示:
321、12、4932
321、32、4643
321、95、3921
...
143、98、2432
143、28、3910
...
832, 43, 2910
832, 54, 2190
...
572、91、8492
572、92、9302
572、15、3902
...
321、93、7281
321、48、6218
...
832, 78, 0148
832, 91, 7281
问题是我需要将文件按第一列完美分组,所以上面的例子应该是:
321、12、4932
321、32、4643
321、95、3921
321、93、7281
321、48、6218
...
143、98、2432
143、28、3910
...
832、43、2910
832、54、2190
832、78、0148
832、91、7281
...
572、91、8492
572、92、9302
572、15、3902
...
.. 同时,如上所示,第一列不应该按顺序排序。我需要第一列的顺序相同(这可能听起来很奇怪,但由于它是部分分组的,因此它在大范围内具有一定的顺序)。
解决这个问题最快的算法是什么?
【问题讨论】: