Sortieren eines mehrdimensionalen Liste durch eine variable Anzahl von Schlüsseln

Habe ich gelesen dieser Beitrag und ist noch nicht endete, für mich zu arbeiten.

Edit: die Funktionalität, die ich beschreibe, ist genau wie die Sortierfunktion in Excel... wenn das macht es klarer

Hier ist meine situation, ich habe eine tab-getrennte text-Dokument. Es gibt etwa 125.000 Zeilen und 6 Spalten pro Zeile (Spalten getrennt durch ein tab-Zeichen). Ich habe das Dokument geteilt werden soll in einem zwei-Dimensions-Liste.

Ich bin versucht, zu schreiben eine generische Funktion zum Sortieren von zwei-dimensionalen Listen. Grundsätzlich würde ich gerne eine Funktion haben wo kann ich das pass die große Liste, und der Schlüssel, der einer oder mehreren Spalten, ich möchte Sortieren der großen Liste durch. Natürlich möchte ich, dass der erste Schlüssel übergeben für die primäre Sortierung Punkt, dann den zweiten Schlüssel, etc.

Immer noch confuzzled?

Hier ist ein Beispiel was ich gerne tun würde.

Joel    18  Orange  1
Anna    17  Blue    2
Ryan    18  Green   3
Luke    16  Blue    1
Katy    13  Pink    5
Tyler   22  Blue    6
Bob     22  Blue    10
Garrett 24  Red 7
Ryan    18  Green   8
Leland  18  Yellow  9

Sagen, dass ich übergeben Sie diese Liste, um meine Magische Funktion, etwa so:

sortByColumn(bigList, 0)

Anna    17  Blue    2
Bob     22  Blue    10
Garrett 24  Red 7
Joel    18  Orange  1
Katy    13  Pink    5
Leland  18  Yellow  9
Luke    16  Blue    1
Ryan    18  Green   3
Ryan    18  Green   8
Tyler   22  Blue    6

und...

sortByColumn(bigList, 2, 3)

Luke    16  Blue    1
Anna    17  Blue    2
Tyler   22  Blue    6
Bob     22  Blue    10
Ryan    18  Green   3
Ryan    18  Green   8
Joel    18  Orange  1
Katy    13  Pink    5
Garrett 24  Red 7
Leland  18  Yellow  9

Irgendwelche Hinweise?

Schreibe einen Kommentar