1 / 1 / 0
Регистрация: 13.10.2012
Сообщений: 28
|
||||||
Quick Sort, рекурсия15.10.2013, 15:03. Показов 2091. Ответов 11
Метки нет Все метки)
(
Помогите пожалуйста с рекурсией, пишу Быструю Сортировку, все нормально работает до второго вызова рекурсии
0
|
15.10.2013, 15:03 | |
Ответы с готовыми решениями:
11
IndexOutOfRangeExeption в алгоритме Quick Sort
Quick sort c++ |
Администратор
![]() ![]() |
|
15.10.2013, 15:32 | |
Smems, хорошо что добрый дядя из Microsoft написал метод сортировки, а если дяди потом не будет, как Lordik192 будет код писать?
0
|
154 / 153 / 29
Регистрация: 21.05.2010
Сообщений: 338
|
|
15.10.2013, 15:39 | |
Не по теме: tezaurismosis, вы ещё скажите, что не нужно пользоваться готовыми библиотеками, паттернами и т.д. И компилятор свой нужно писать. А вдруг все исчезнут? Я же не знаю, для чего товарищу Lordik192. Вдруг он не знает про готовые методы. А по делу: Lordik192, вот вам алгоритмы, пользуйтесь.
1
|
![]() 608 / 583 / 157
Регистрация: 29.06.2010
Сообщений: 1,620
|
||||||
15.10.2013, 15:45 | ||||||
не уверен что этот алгоритм можно причислить к быстрым (по моему их вообще штуки 3 общеизвестных), но он всяко быстрее чем изначальный со встроенными While() =)
0
|
1 / 1 / 0
Регистрация: 13.10.2012
Сообщений: 28
|
|
15.10.2013, 15:49 [ТС] | |
спасибо, я их уже видел, когда искал код с qsort, но мне интересно самому ее написать, и сравнить различие в скорости выполнения. Но у меня вышла проблема с рекурсией в моем методе и мне интересно, что в ней не так, все еще надеюсь, что кто-то поможет.
Добавлено через 2 минуты Спасибо, но я сейчас разбираюсь именно с qSort, а Вы мне предлагаете нечто другой алгоритм
0
|
![]() 608 / 583 / 157
Регистрация: 29.06.2010
Сообщений: 1,620
|
||||||||||||||||
15.10.2013, 16:13 | ||||||||||||||||
проблема в том, что алгоритм не работает © КЭП
просто подумай сам, после первого вызова алгоритма срабатывает цикл While(), который даже не хочу понимать что делает, после того цикл пройдёт наконец по всем эллементам, и по моему даже не по одному разу, этот же метод сортировки вызывается ещё 2 раза, в каждом из которых присуствует как цикл While(), так и ещё пара вызовов этого же метода... Добавлено через 4 минуты по коду: это явно китайский подход:
как я уже упоминал, даже еслиб это работало, оно слишком ужасно: а вообще, минимально изменённый ваш код вот:
0
|
15.10.2013, 16:22 | |
Не по теме: Smems, такую чушь пороть не буду, это неверный вывод из моих слов. Программист должен знать как работают алгоритмы, компиляторы и пр. поэтому студентов заставляют их изучать и писать. Ну а по поводу того, что вы не сразу поняли, что это студент ... пусть будет так. :mda:
0
|
1 / 1 / 0
Регистрация: 13.10.2012
Сообщений: 28
|
|
15.10.2013, 16:24 [ТС] | |
мой цикл While() выполняет нахождение абсолютной позиции элементом и поэтому он выполняется в самом начале, цикл проходит через все элементы лишь единожды. То что у меня "китайский" подход это не удивительно, я его только начал писать и еще не оптимизировал.
По поводу двойного рекурсивного вызова, то алгоритм qSort сам собой подразумевает разбиение массива на 2 части и отдельную их сортировку, то что Вы предлагаете не совсем соответствует алгоритму, который я стремлюсь реализовать
0
|
![]() 608 / 583 / 157
Регистрация: 29.06.2010
Сообщений: 1,620
|
|
15.10.2013, 16:42 | |
хм... по правде говоря терзаюсь сомнениями, куда же вас послать, то ли на фриланс, то ли к терапевту...
вам указали где ошибка, вам указали пару вариантов решения проблемы, а вы весь такой "а я хочу по другоооому..."
0
|
15.10.2013, 16:42 | |
Помогаю со студенческими работами здесь
12
Сортировка Quick Sort Quick sort using vectors
Нахождения медианы quick sort Реализация алгоритма Quick sort Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Опции темы | |
|
Новые блоги и статьи
![]() |
||||
SwiftUI Data Flow: Передача данных между представлениями
mobDevWorks 23.03.2025
При первом знакомстве со SwiftUI кажется, что фреймворк предлагает избыточное количество механизмов для передачи данных: @State, @Binding, @StateObject, @ObservedObject, @EnvironmentObject и другие. . . .
|
Моки в Java: Сравниваем Mockito, EasyMock, JMockit
Javaican 23.03.2025
Как протестировать класс, который зависит от других сложных компонентов, таких как базы данных, веб-сервисы или другие классы, с которыми и так непросто работать в тестовом окружении? Для этого и. . .
|
Архитектурные паттерны микросервисов: ТОП-10 шаблонов
ArchitectMsa 22.03.2025
Популярность микросервисной архитектуры объясняется множеством важных преимуществ. К примеру, она позволяет командам разработчиков работать независимо друг от друга, используя различные технологии и. . .
|
Оптимизация рендеринга в Unity: Сортировка миллиона спрайтов
GameUnited 22.03.2025
Помните, когда наличие сотни спрайтов в игре приводило к существенному падению производительности? Время таких ограничений уходит в прошлое. Сегодня геймдев сталкивается с задачами совершенно иного. . .
|
Образование и практика
Igor3D 21.03.2025
Добрый день
А вот каково качество/ эффективность ВУЗовского образования? Аналитическая геометрия изучается в первом семестре и считается довольно легким курсом, что вполне справедливо. Ну хорошо,. . .
|
Lazarus. Таблица с объединением ячеек.
Massaraksh7 21.03.2025
Понадобилась представление на экране таблицы с объединёнными ячейками. И не одной, а штук триста, и все разные. На Delphi я использовал для этих целей TStringGrid, и то, кривовато получалось. А в. . .
|
Async/await в Swift: Асинхронное программирование в iOS
mobDevWorks 20.03.2025
Асинхронное программирование долго было одной из самых сложных задач для разработчиков iOS. В течение многих лет мы сражались с замыканиями, диспетчеризацией очередей и обратными вызовами, чтобы. . .
|
Колмогоровская сложность: Приёмы упрощения кода
ArchitectMsa 20.03.2025
Наверное, каждый программист хотя бы раз сталкивался с кодом, который напоминает запутанный лабиринт — чем дальше в него погружаешься, тем сложнее найти выход. И когда мы говорим о сложности кода, мы. . .
|
PostgreSQL в Kubernetes: Подготовка кластера и настройка
Mr. Docker 20.03.2025
Когда доходит до контейнеризации баз данных и особенно таких требовательных к ресурсам системах как PostgreSQL, многие команды до сих пор колеблются, прежде чем перенести их в контейнерную. . .
|
C++26: Индексирование пакетов и метапрограммирование
bytestream 20.03.2025
Эволюция C++ продолжается стремительными темпами – каждый новый стандарт приносит функциональность, о которой мы мечтали годами. Звучит слишком громко? Если вы когда-либо боролись с вариадическими. . .
|