Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Быстрая сортировка. Число перестановок
|
|||
|---|---|---|---|
|
#18+
Пытаюсь реализовать подсчет колличества перестановок в методе быстрой сортировки. Переманная-счетчик kolvo, начальное значение которой 0 присвоено в основном блоке программы. Очень смущает малое значение возвращаемое функцией(1-2 перестановки на 3-5 строк). Прошу проверить правильность реализации подсчета. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.10.2012, 00:41 |
|
||
|
Быстрая сортировка. Число перестановок
|
|||
|---|---|---|---|
|
#18+
... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.10.2012, 01:07 |
|
||
|
Быстрая сортировка. Число перестановок
|
|||
|---|---|---|---|
|
#18+
kab18, Подсчет - неверный, причем дважды. 1) Кол-во перестановок подсчитанное и возвращаемое внутренними рекурсивными вызовами игнорируется и не учитывается в вызвающем коде 2) Зачем-то текущий счетчик передается во внутренние вызовы в качестве начального. Если исправить п.1 то п.2 приведет к дублированию. Правильно - перенести kolvo из агрументов в локальные переменные с начальным значением 0. Подсчитать кол-во на текущем уровне вложенности. А при вызове вложенных веток рекурсии прибавлять их результат к счетчику. И потом все вернуть. Второй вариант - аргумент kolvo сделать ссылкой (или указателем) и каждый вызов в нем будет подсчитывать свои перестановки. При этом естественно уже ничего складывать и возвращать не надо. ЗЫ. Сам алгоритм сортировки не смотрел, но сразу скажу - в quicksort нигде выделение памяти не требуется, он работает с тем массивом что ему передают на вход. Так что все эти new, да еще и в цикле, и указатели *** выглядят страшновато :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.10.2012, 01:09 |
|
||
|
Быстрая сортировка. Число перестановок
|
|||
|---|---|---|---|
|
#18+
Я не совсем понял то, что вы написали на счет уровней вложенностей и веток рекурсии но попытался исправить: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.10.2012, 01:35 |
|
||
|
|

start [/forum/topic.php?fid=57&msg=38003427&tid=2020744]: |
0ms |
get settings: |
7ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
220ms |
get topic data: |
12ms |
get forum data: |
2ms |
get page messages: |
47ms |
get tp. blocked users: |
2ms |
| others: | 15ms |
| total: | 324ms |

| 0 / 0 |
