есть алгоритм сортировки одномерного массива.
далее вижу такой пордход
1 берем одномерный столбец( тот, по которому нужно сортировать)(вот тут лучше воспользоваться средствами не совсем VBA - функция copymemory из библиотеки kernel32 с этим справится быстрее)
2 создаем доп массив, равный получившемуся одномерному- он будет считаться заполненным порядковыми номерами элементов первого массива(1,2,3..) - т.е. изначально он упорядочен.
3 сортируем первый массив, одновременно выполняя те же преобразования над вторым
4 переписываем остальные поля двумерного массива в соответствии с порядком, получившимся в нашем дополнит массиве - например получилось 4,2,8,1.. -
заполняем двумерный массив arr(1 to n,1 to c) из первоначального массива arr_n с помощью нашего доп массива arr_r(1 to n)
for i=1 to n
..
arr(i,c)=arr_n(arr_r(i))
next
есть ли лучшие предложения? или где почитать?
далее вижу такой пордход
1 берем одномерный столбец( тот, по которому нужно сортировать)(вот тут лучше воспользоваться средствами не совсем VBA - функция copymemory из библиотеки kernel32 с этим справится быстрее)
2 создаем доп массив, равный получившемуся одномерному- он будет считаться заполненным порядковыми номерами элементов первого массива(1,2,3..) - т.е. изначально он упорядочен.
3 сортируем первый массив, одновременно выполняя те же преобразования над вторым
4 переписываем остальные поля двумерного массива в соответствии с порядком, получившимся в нашем дополнит массиве - например получилось 4,2,8,1.. -
заполняем двумерный массив arr(1 to n,1 to c) из первоначального массива arr_n с помощью нашего доп массива arr_r(1 to n)
for i=1 to n
..
arr(i,c)=arr_n(arr_r(i))
next
есть ли лучшие предложения? или где почитать?
Живи и дай жить..