1 / 1 / 2
Регистрация: 10.11.2013
Сообщений: 126
1

List<double[][]> sort и binarySearch метод

20.12.2016, 14:07. Показов 1968. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте! Поиск не дал результатов. Как можно отсортировать каждый массив списка по первому(n-му) столбцу?
И применить к первому(n-му) столбцу метод BinarySearch на поиск в нём заданного числа(ближайшего к заданному) и соответсвенно его индекса.
Прочитал эту ссылку: https://msdn.microsoft.com/ru-... w8xwf.aspx
не могу понять момент: если параметр value не найден, то как мне обработать побитовое дополнение,
чтобы получить ближайший индекс?
Кода пока никакого нет, если сделаю быстрее экспертов выложу )).

Добавлено через 13 минут
Сортировка наверное так:
C#
1
2
3
4
foreach (var instance in datalist)
            {
                instance[0].ToList<double>().Sort();
            }
Добавлено через 49 секунд
,где
C#
1
List<double[][]> datalist = new List<double[][]>();
Добавлено через 4 минуты
хотя это не совсем то, так как остальные столбцы не подтянутся к этой сортировке
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
20.12.2016, 14:07
Ответы с готовыми решениями:

Linq преобразование List<List<double>> в List<Array>
Доброго времени суток, данный код нужно преобразовать linq выражениями и дописать выборку из ...

Как узнать размерность внутреннего вектора в массиве List<List<Double>>?
Добрый вечер! Уважаемые, подскажите пожалуйста, как узнать размерность внутренних строк в...

Перевод List<List<double>> в double[][]
Есть ли короткая запись перевода List&lt;List&lt;double&gt;&gt; в double? Я имею в виду перевод без цикла,...

Работат с листом листов (List<List<double>>)
Имеет ли смысл такая конструкция List&lt;List&lt;double&gt;&gt;? Экземпляр-то создается, но немного подвис я,...

2
1037 / 440 / 225
Регистрация: 02.06.2016
Сообщений: 703
20.12.2016, 15:01 2
Цитата Сообщение от НовыйНовичок Посмотреть сообщение
double[][]
Массив хранится по строкам или столбцам? Если по строкам сначала транспонируй, чтобы он хранился по столбцам, затем используй любую сортировку (это также решит проблему поиска в первой строке), например:
C#
1
Array.Sort(array, (a, b) => a[0].CompareTo(b[0]));
Цитата Сообщение от НовыйНовичок Посмотреть сообщение
как мне обработать побитовое дополнение
либо умножь на минус единицу, получишь индекс на единицу больше, либо используй тильду:
C#
1
2
3
4
5
6
7
8
9
10
11
double[] a = { 1, 2, 3 };
int idx = Array.BinarySearch(a, 0.7);
if (idx >= 0)
{
    Console.WriteLine("номер элемента " + idx);
}
else
{
    Console.WriteLine("элемент должен располагаться на позиции " + (~idx));
    Console.WriteLine("элемент должен располагаться перед " + (-idx) + "'ым");
}
1
1 / 1 / 2
Регистрация: 10.11.2013
Сообщений: 126
21.12.2016, 11:07  [ТС] 3
Вот нашел тоже про сортировку, только не понятно как у вас или нет: https://bytes.com/topic/c-shar... array-sort

Добавлено через 1 минуту
Ну и конечно спасибо за помощь

Добавлено через 11 минут
массив хранится по строка: строка 0 ----> время, первый параметр, 2-ой парамтр, 3-ий п-р, и т.д.
строка 1 ----> время, первый параметр, 2-ой парамтр, 3-ий п-р, и т.д.
строка 2 ----> время, первый параметр, 2-ой парамтр, 3-ий п-р, и т.д.
Если я отсортирую по времени, то остальные параметры не будут отсортированы ?, мне надо таким образом.
Т.е. параметр2 в строке 0 может быть больше параметра2 в строке1.

Добавлено через 19 часов 33 минуты
я неправильно написал третье сообщение в данной ветке: "мне не надо так чтобы элементы только в одном столбце сортировались" -- моя мысль, после слов транспонируй перескочила будто у меня двумерный. а не зубчатый массив, да и не слышал я пока про транспонирование зубчатых массивов. Так что вопроса нет....

Добавлено через 31 секунду
я неправильно написал третье сообщение в данной ветке: "мне не надо так чтобы элементы только в одном столбце сортировались" -- моя мысль, после слов транспонируй перескочила будто у меня двумерный. а не зубчатый массив, да и не слышал я пока про транспонирование зубчатых массивов. Так что вопроса нет....

Добавлено через 7 минут
хотя можно транспонировать вот так: https://www.codeproject.com/Ar... ray-CSharp
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
21.12.2016, 11:07
Помогаю со студенческими работами здесь

Преобразовать List<double[]> в List<Array>
Собственно такой вот вопрос, как это сделать.

Sort list in Dictionary
У меня есть Dictionary, в котором ключом служат размеры файла в килобайтах, а значением листы с...

Метод сортировки по типу Collections.sort(List<T> A, Comparator<T> Order)
Всем привет! Нужен метод сортировки списка с применением компаратора, именно тот что используется в...

Поиск в List(Of T) с помощью BinarySearch
Доброго времени суток господа. С прошедшими Вас праздниками …. Создал типизированный список...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2023, CyberForum.ru