|
Заблокирован
|
|||||||||||
Изучение спроса: алгоритмы сортировки на C#04.04.2013, 17:13. Показов 5568. Ответов 19
Метки нет (Все метки)
Предлагаю к вашему вниманию статический класс SortHelper, в котом реализованы различные виды сортировок и их оптимизаций:
1. Быстрая сортировка (2 шт.) 2. Сортировка Шелла. 3. Сортировка вставками (2 шт.) 4. Выбором 5. Пузырьковая. Если тема будет пользоваться спросом, то будут добавлены: 1. Пирамидальная сортировка 2. Сортировка слиянием. 3. интроспективная сортировка (быстрая + пирамидальная) 4. сортировка Седжвика (быстрая + вставками). 5. Dual-pivot quicksort. Чтобы пощупать/ потестировать/ сравнить. Прилагаю код для тестирования и измерения времени работы алгоритмов для целочисленных массивов. Алгоритмы сортировки
Тестирование
Сразу оговорюсь, что ни каких проверок на дурака\отлов Exception в коде нет и не будет, т.к. этот код используется только для учебных целей. Просмотрел FAQ там есть сортировки, но несколько разрознено, а некоторые попросту не представлены. А так же для тех, кто считает, что изучение алгоритмов сортировки пустая трата времени: Проходите стороной
4
|
|||||||||||
| 04.04.2013, 17:13 | |
|
Ответы с готовыми решениями:
19
Алгоритмы сортировки массивов.Реализуйте алгоритмы сортировок данных массивов
|
|
644 / 198 / 5
Регистрация: 24.07.2010
Сообщений: 1,315
|
|
| 05.04.2013, 13:31 | |
|
а вот отлавливать ошибки то надо, тем более когда для учебы
0
|
|
|
Заблокирован
|
|
| 05.04.2013, 13:42 [ТС] | |
|
23Alex24, ошибки отлавливаются тестированием, и диагностическими утверждениями - это реализация алгоритмов, а не промышленный код.
Пользуясь реализациями ты сам должен заботиться об обработке исключений.
0
|
|
|
644 / 198 / 5
Регистрация: 24.07.2010
Сообщений: 1,315
|
|
| 05.04.2013, 13:44 | |
|
а я думал, что это законченная система для обучения алгоритмам, что там можно проверять их в действии и прочее, а раз это какие-то ваши не доработки, то смысл в них? чтобы люди брали код и представляли его за свой?
0
|
|
|
461 / 442 / 75
Регистрация: 26.12.2012
Сообщений: 2,888
|
|
| 05.04.2013, 14:02 | |
|
у меня в main методе в 154 строке выдает две ошибки
1. Argument 2: cannot convert from 'T[]' to 'string[]' 2. The best overloaded method match for 'string.Join(string, string[])' из-за чего так?
0
|
|
|
644 / 198 / 5
Регистрация: 24.07.2010
Сообщений: 1,315
|
|
| 05.04.2013, 14:10 | |
|
Ты должен разобраться сам, это задумка автора, видимо ты не в учебных целях используешь код
0
|
|
|
461 / 442 / 75
Регистрация: 26.12.2012
Сообщений: 2,888
|
|
| 05.04.2013, 14:24 | |
|
да нет, я просто только скопировал код в студию даже не компилировал и мне эту строчку подчеркивает
0
|
|
|
644 / 198 / 5
Регистрация: 24.07.2010
Сообщений: 1,315
|
|
| 05.04.2013, 14:27 | |
|
Ну не знаю, возможно программа видит в тебе какой-то злой умысел =)а вообще код бы увидеть, чтобы понять, что не так=)
0
|
|
|
461 / 442 / 75
Регистрация: 26.12.2012
Сообщений: 2,888
|
||||||
| 05.04.2013, 15:11 | ||||||
|
дак код ведь есть в начале темы под спойлером Тестирование который, вот в нем строка 154, я и говрю что я взял просто скопировал этот код в студию
вот эта строка
0
|
||||||
|
Заблокирован
|
||||||||||||
| 05.04.2013, 15:25 | ||||||||||||
1
|
||||||||||||
|
461 / 442 / 75
Регистрация: 26.12.2012
Сообщений: 2,888
|
|
| 05.04.2013, 15:30 | |
|
спасибо, просто в свойствах проекта Target framework 4.0 поставил и норм стало, стояло 3.5
а чего это в 3.5 не хватает?
0
|
|
|
Заблокирован
|
||
| 05.04.2013, 15:57 | ||
|
1
|
||
|
Заблокирован
|
||||||||||||||||||||||||||
| 05.04.2013, 22:01 [ТС] | ||||||||||||||||||||||||||
|
Добавил Слиянием и расческой
В контексте статического класса public static class SortHelper<T> where T : IComparable Сортировка слиянием
Расчёской
восходящий вариант сортировки слиянием
ну и конечно же: Лас Вегас алгоритм сортировки
1
|
||||||||||||||||||||||||||
|
Заблокирован
|
||||||
| 08.04.2013, 01:57 [ТС] | ||||||
|
очевидное улучшение по производительности для Value Type будет замена ограничения с where T : IComparable на where T : IComparable<T>, т.к. для каждого сравнения происходит boxing/unboxing.
Выбор max, min, min_max(оптимизация по парного сравнения). n-th element в среднем за линейное время. Быстрая сортировка теперь переключается на сортировку вставками. У меня скорость работы улучшилась на 15 %. Добавил чутка порядковой статистики
0
|
||||||
|
Заблокирован
|
|
| 14.04.2013, 00:06 | |
|
решил приподнять эту тему, т.к. человек, то заблокирован, но я могу продолжить его начинания. Нужно это кому?
Пирамидальную, поразрядную, подсчетом и всякие полезные следствия из этих алгоритмов могу выложить, а если не надо, то и хрен с ним так тут можно выражаться?
0
|
|
|
774 / 554 / 80
Регистрация: 03.07.2011
Сообщений: 1,020
|
|
| 14.04.2013, 01:54 | |
|
0
|
|
|
Заблокирован
|
|
| 14.04.2013, 02:02 | |
|
Vitall, первый кто заметил, поздравляю! Вообще-то он ныне здравствует и продолжает троллить тупорылых
0
|
|
| 14.04.2013, 02:06 | |
|
Не по теме: adm_loro, Я и смотрю что кого то он мне напоминает ))
0
|
|
|
Заблокирован
|
|
| 14.04.2013, 02:08 | |
|
Vitall, ты на что это, царская морда, намекаешь?
0
|
|
|
774 / 554 / 80
Регистрация: 03.07.2011
Сообщений: 1,020
|
|
| 14.04.2013, 02:18 | |
|
adm_loro, Фактура прёт ,её не спрячешь )
1
|
|
| 14.04.2013, 02:18 | |
|
Помогаю со студенческими работами здесь
20
Алгоритмы сортировки Алгоритмы Сортировки Алгоритмы сортировки Алгоритмы сортировки Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
1С: Контроль уникальности заводского номера
Maks 23.03.2026
Алгоритм контроля уникальности заводского (или серийного) номера на примере документа выдачи шин для спецтехники с табличной частью. Данные берутся из регистра сведений, по которому настроено. . .
|
Хочу заставить корпорации вкладываться в здоровье сотрудников: делаю мат модель здравосохранения
anaschu 22.03.2026
e7EYtONaj8Y
Z4Tv2zpXVVo
https:/ / github. com/ shumilovas/ med2. git
|
1С: Программный отбор элементов справочника по группе
Maks 22.03.2026
Установка программного отбора элементов справочника "Номенклатура" из модуля формы документа.
В качестве фильтра для отбора справочника служит группа номенклатуры.
Отбор по наименованию группы. . .
|
Как я обхитрил таблицу Word
Alexander-7 21.03.2026
Когда мигает курсор у внешнего края таблицы, и нам надо перейти на новую строку, а при нажатии Enter создается новый ряд таблицы с ячейками, то мы вместо нервных нажатий Энтеров мы пишем любые буквы. . .
|
|
Krabik - рыболовный бот для WoW 3.3.5a
AmbA 21.03.2026
без регистрации и смс.
Это не торговля, приложение не содержит рекламы. Выполняет свою непосредственную задачу - автоматизацию рыбалки в WoW - и ничего более. Однако если админы будут против -. . .
|
1С: Программный отбор элементов справочника по значению перечисления
Maks 21.03.2026
Установка программного отбора элементов справочника "Сотрудники" из модуля формы документа.
В качестве фильтра для отбора служит значение перечислений.
/ / Событие "НачалоВыбора" реквизита на форме. . .
|
Переходник USB-CAN-GPIO
Eddy_Em 20.03.2026
Достаточно давно на работе возникла необходимость в переходнике CAN-USB с гальваноразвязкой, оный и был разработан. Однако, все меня терзала совесть, что аж 48-ногий МК используется так тупо: просто. . .
|
Оттенки серого
Argus19 18.03.2026
Оттенки серого
Нашёл в интернете 3 прекрасных модуля:
Модуль класса открытия диалога открытия/ сохранения файла на Win32 API;
Модуль класса быстрого перекодирования цветного изображения в оттенки. . .
|