Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.55/47: Рейтинг темы: голосов - 47, средняя оценка - 4.55
 Аватар для KostyaKulakov
64 / 52 / 2
Регистрация: 02.07.2012
Сообщений: 391
Записей в блоге: 2

Отличие std::sort От std::qsort

12.03.2013, 18:28. Показов 10145. Ответов 19
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Пишу доклад по программированию, собственно выбрал тему сортировок.

вот сейчас хочу расписать отлчиие + и - двух сортировок. но инфу не могу найти.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
12.03.2013, 18:28
Ответы с готовыми решениями:

std::sort + std::lower_bound
тема такая: есть класс person: class Person{ private: string name_; string adress_; long phone_; есть вектор объектов...

Не воспринимает ни std::cout, ни std::cin. Вобщем ничего из std. Также не понимает iostream
Здравствуйте! Я хотел начать изучать язык C++. Набрал литературы. Установил Microsoft Visual C++ 2005 Express Edition. Образ диска...

ошибка error: cannot convert 'std::string {aka std::basic_string<char>}' to 'std::string* {aka std::basic_stri
на вод поступают 2 строки типа string. определить количество вхождений строки 2 в строку 1 ошибка error: cannot convert 'std::string {aka...

19
Helter Skelter
 Аватар для hofmn
64 / 64 / 19
Регистрация: 19.09.2012
Сообщений: 133
12.03.2013, 18:38
qsort не входит в пространство имен std, это устаревший вариант, который используется только в C.
1
Эксперт С++
 Аватар для ITcrusader
179 / 165 / 21
Регистрация: 12.02.2013
Сообщений: 410
12.03.2013, 18:39
qsort vs sort
google: qsort vs sort c++
1
Неэпический
 Аватар для Croessmah
18149 / 10731 / 2067
Регистрация: 27.09.2012
Сообщений: 27,035
Записей в блоге: 1
12.03.2013, 18:41
Цитата Сообщение от KostyaKulakov Посмотреть сообщение
вот сейчас хочу расписать отлчиие + и - двух сортировок.
Вам отличие алгоритмов, или этих функций?
1
Эксперт С++
 Аватар для ITcrusader
179 / 165 / 21
Регистрация: 12.02.2013
Сообщений: 410
12.03.2013, 18:41
Цитата Сообщение от hofmn Посмотреть сообщение
qsort не входит в пространство имен std, это устаревший вариант, который используется только в C.
в C, которое - подмножество C++
1
Неэпический
 Аватар для Croessmah
18149 / 10731 / 2067
Регистрация: 27.09.2012
Сообщений: 27,035
Записей в блоге: 1
12.03.2013, 18:42
Цитата Сообщение от KostyaKulakov Посмотреть сообщение
собственно выбрал тему сортировок.
Алгоритмы сортировок
1
 Аватар для KostyaKulakov
64 / 52 / 2
Регистрация: 02.07.2012
Сообщений: 391
Записей в блоге: 2
12.03.2013, 19:05  [ТС]
а можете рассписать

все "за" и "против", каждой сортировки в нашем случаее qsort И sort

Добавлено через 19 минут
вот тут прочитал

http://ru.wikipedia.org/wiki/Б... 0.BA.D0.B8

Неустойчив — если требуется устойчивость, приходится расширять ключ.

какой ключ имеют ввиду?
0
Helter Skelter
 Аватар для hofmn
64 / 64 / 19
Регистрация: 19.09.2012
Сообщений: 133
12.03.2013, 19:12
Цитата Сообщение от KostyaKulakov Посмотреть сообщение
какой ключ имеют ввиду?
Ключ - то, за чем сортируют.
С вики:
"При сортировке записей вида (фамилия, имя, отчество) по фамилии значения ключей для Иванов Сергей и Иванов Иван будут одинаковы, поэтому устойчивая сортировка не переставит Сергея и Ивана местами."
Неустойчивая, соответственно, переставит.
1
Эксперт С++
 Аватар для ITcrusader
179 / 165 / 21
Регистрация: 12.02.2013
Сообщений: 410
12.03.2013, 23:23
Костя, лады. Мне тут стало интересно следующее. Существует множество сортировок (разные по скорости/простоте реализации/стабильности(stable sort)) - раз. Разные алгоритмы сортировок эффективно/неэффективно реализуются на разных структурах данных.

Почему в вопросе привязка к каким-то библиотечным функциям, когда такой огромный простор, где можно разгуляться. А коль уж такая пьянка пошла - получите-распишитесь:

Д. Э. Кнут: Искусство Программирования. Том 3 Сортировка и Поиск

Вот что не горит - так это Кнут. Он будто для тебя её писал
1
интересующийся
311 / 282 / 93
Регистрация: 25.09.2010
Сообщений: 1,056
13.03.2013, 01:06
qsort и std::sort реализованы по одному и томуже алгоритму quicksort
0
What a waste!
 Аватар для gray_fox
1610 / 1302 / 180
Регистрация: 21.04.2012
Сообщений: 2,733
13.03.2013, 01:36
Вообще вроде не факт, что std::sort использует быструю сортировку, там может быть любой O(n log(n)) алгоритм.
0
Неэпический
 Аватар для Croessmah
18149 / 10731 / 2067
Регистрация: 27.09.2012
Сообщений: 27,035
Записей в блоге: 1
13.03.2013, 02:24
Как можно у алгоритма расписать "за" и "против"? Каждый алгоритм хорош в одном случае и может быть наихудшим решением в другом.
0
интересующийся
311 / 282 / 93
Регистрация: 25.09.2010
Сообщений: 1,056
13.03.2013, 14:42
Цитата Сообщение от gray_fox Посмотреть сообщение
Вообще вроде не факт, что std::sort использует быструю сортировку, там может быть любой O(n log(n)) алгоритм.
Аргументы в студию
0
Неэпический
 Аватар для Croessmah
18149 / 10731 / 2067
Регистрация: 27.09.2012
Сообщений: 27,035
Записей в блоге: 1
13.03.2013, 15:56
Цитата Сообщение от xtorne21st Посмотреть сообщение
Аргументы в студию
Стандарт:
25.4.1.1 sort [sort]
C++
1
2
3
4
5
template<class RandomAccessIterator>
void sort(RandomAccessIterator first, RandomAccessIterator last);
template<class RandomAccessIterator, class Compare>
void sort(RandomAccessIterator first, RandomAccessIterator last,
Compare comp);
1 Effects: Sorts the elements in the range [first,last).
2 Requires: RandomAccessIterator shall satisfy the requirements of ValueSwappable (17.6.3.2). The
type of *first shall satisfy the requirements of MoveConstructible (Table 20) and of MoveAssignable
(Table 22).
3 Complexity: O(N log(N)) (where N == last - first) comparisons.
0
интересующийся
311 / 282 / 93
Регистрация: 25.09.2010
Сообщений: 1,056
13.03.2013, 16:03
Да, но тут ничего не говорится о разновидностях сортировок. "Эффективность" quicksort O(N log(N)) это факт...
0
Неэпический
 Аватар для Croessmah
18149 / 10731 / 2067
Регистрация: 27.09.2012
Сообщений: 27,035
Записей в блоге: 1
13.03.2013, 16:04
Цитата Сообщение от xtorne21st Посмотреть сообщение
Да, но тут ничего не говорится о разновидностях сортировок.
Вот именно. Вам и написали, что может быть любая с указанной сложностью.
1
интересующийся
311 / 282 / 93
Регистрация: 25.09.2010
Сообщений: 1,056
13.03.2013, 16:09
Что-то слово "любая" я не наблюдаю. Просто говорится о сложности...
0
Неэпический
 Аватар для Croessmah
18149 / 10731 / 2067
Регистрация: 27.09.2012
Сообщений: 27,035
Записей в блоге: 1
13.03.2013, 16:12
Цитата Сообщение от xtorne21st Посмотреть сообщение
Что-то слово "любая" я не наблюдаю.
Вам уже писали
Цитата Сообщение от gray_fox Посмотреть сообщение
там может быть любой O(n log(n)) алгоритм.
Стандарт регламентирует требования, поведение, но не реализацию.
2
интересующийся
311 / 282 / 93
Регистрация: 25.09.2010
Сообщений: 1,056
14.03.2013, 21:00
Цитата Сообщение от Croessmah Посмотреть сообщение
O(N log(N))
А что означает буква O? Может кто-то в курсе?
0
Helter Skelter
 Аватар для hofmn
64 / 64 / 19
Регистрация: 19.09.2012
Сообщений: 133
14.03.2013, 21:18
Цитата Сообщение от xtorne21st Посмотреть сообщение
А что означает буква O? Может кто-то в курсе?
Хабр
2
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
14.03.2013, 21:18
Помогаю со студенческими работами здесь

STL std::set, std::pair, std::make_pair
Я не знаю как описать тему в двух словах, поэтому не обращайте внимание на название темы. Собственно перейдем к нашим баранам: есть...

На основе исходного std::vector<std::string> содержащего числа, создать std::vector<int> с этими же числами
подскажите есть вот такая задача. Есть список . Создать второй список, в котором будут все эти же числа, но не в виде строк, а в виде...

Std::begin() ,std::end(),std::copy
...// int main() { std::vector&lt;double&gt; data;//Работает cout &lt;&lt; std::begin(data); double *data=new double; ...

Std::bind, std::mem_fun, std::mem_fn
В чем разница между функциями std::bind, std::mem_fun, std::mem_fn?

std::sort()
Доброго времени суток! Есть некая структура: struct member { int latency; std::vector&lt;int&gt;child; };


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

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11680&amp;d=1772460536 Одним из. . .
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
SDL3 для Web (WebAssembly): Сборка библиотек: SDL3, Box2D, FreeType, SDL3_ttf, SDL3_mixer и SDL3_image из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru