Witam,
Potrzebuje posortować tablicę dwuwymiarową, która zawiera stringi (wartości liczbowe ale w postaci string - zaczytane w pliku csv).
Sortowanie ma być po przedostatnim wierszu, od najmniejszej wartości do największej.
is_integer - funkcja konwertuje stringi na double
rozmiar_danych_kolumny - ilość kolumn w pliku csv
rozmiar_danych_wiersze - ilość wierszy w pliku csv
for (int Z = 1; Z < rozmiar_danych_kolumny; Z++) {
for (int X = 1; X < rozmiar_danych_kolumny; X++) {
if (is_integer(tablica_dane[rozmiar_danych_wiersze - 2,X]) > is_integer(tablica_dane[rozmiar_danych_wiersze - 2,Z])) {
for (int Y = 0; Y < rozmiar_danych_wiersze; Y++) {
tablica_tmp_wiersze[Y] = tablica_dane[Y,X];
tablica_dane[Y,X] = tablica_dane[Y,Z];
tablica_dane[Y,Z] = tablica_tmp_wiersze[Y];
}
}
}
}
i co do zasady kod działa poprawnie, ale przy dużych plikach wykonuje się BARDZO długo...
Jak można by przyspieszyć proces? Myślałem żeby może najpierw przekonwertować całą tablice_dane na wartości liczbowe i dopiero zacząć sortowanie ale nie wiem czy to coś pomoże?