powered by simpleCommunicator - 2.0.57     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / В резильтате сортировки получить вектор с индексами, а не значениями
5 сообщений из 5, страница 1 из 1
В резильтате сортировки получить вектор с индексами, а не значениями
    #38125988
Как это сделать? Функция Array.Sort(arrayname) просто переколбашивает исходный вектор arrayname а мне нужно получить новое расположение индексов. Например:
-1, 19, -13, 4, 2, 3, 2, 8
выдаст
-13, -1, 2, 2, 3, 8, 19
а мне нужно
2, 0, 4, 6, 5, 7, 1
то есть сначала второй, потом нулевой, потом четвертый...элемент из исходного списка

Или наводящий (обходной) вопрос - можно ли сортировать массив Array размером [два,N] по значениям Array[0,i-e]?
...
Рейтинг: 0 / 0
В резильтате сортировки получить вектор с индексами, а не значениями
    #38126658
фиганыч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Изучающий си решетка,

Код: c#
1.
2.
3.
4.
5.
6.
7.
int[] s = {3,4,1,0,7};
Dictionary<int,int> List = new Dictionary<int,int>();
for (int i = 0;i<s.Length;i++)
{
     List.Add(i,s[i]);
}
int[] indexs = List.OrderBy(a => a.Value).Select(a => a.Key).ToArray();



на выходе массив indexs будет содержать индексы сортированных элементов
...
Рейтинг: 0 / 0
В резильтате сортировки получить вектор с индексами, а не значениями
    #38128392
фиганыч,

спасибо, работает. Непонятно, но работает)
...
Рейтинг: 0 / 0
В резильтате сортировки получить вектор с индексами, а не значениями
    #38128557
Фотография buser
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Или так
Код: c#
1.
2.
int[] s = {3,4,1,0,7};
int[] indexs = s.OrderBy(a => a).Select(a => Array.IndexOf(s, a, 0 ) ).ToArray();
...
Рейтинг: 0 / 0
В резильтате сортировки получить вектор с индексами, а не значениями
    #38128564
фиганыч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
buser,

у вас будет верное решение если значения элементов массива не повторяются
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / В резильтате сортировки получить вектор с индексами, а не значениями
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]