|
|
|
почему работает не как надо?
|
|||
|---|---|---|---|
|
#18+
Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.05.2006, 09:29 |
|
||
|
почему работает не как надо?
|
|||
|---|---|---|---|
|
#18+
этот же код (только сортировка по возрастанию) работает правильно: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.05.2006, 09:43 |
|
||
|
почему работает не как надо?
|
|||
|---|---|---|---|
|
#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. Вроде так, протесть хорошенько ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.05.2006, 10:06 |
|
||
|
почему работает не как надо?
|
|||
|---|---|---|---|
|
#18+
случайныйХ Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. Отвыкли студенты писать хоть какие-нибудь тесты на бумаге... В своё время приходилось писать без компилятора по несколько страниц кода, поскольку не было возможности работать с компом... Попробуйте - думать приучает... А ещё рулит пошаговая отладка и здравый смысл... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.05.2006, 10:07 |
|
||
|
почему работает не как надо?
|
|||
|---|---|---|---|
|
#18+
А как называется этот метод? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.05.2006, 10:08 |
|
||
|
почему работает не как надо?
|
|||
|---|---|---|---|
|
#18+
AkhА как называется этот метод? "Всё дело в пузырьках" :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.05.2006, 10:23 |
|
||
|
почему работает не как надо?
|
|||
|---|---|---|---|
|
#18+
Dmitrii K. AkhА как называется этот метод? "Всё дело в пузырьках" :) Ни хрена не пузырек. Может какой-то модернизированнный? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.05.2006, 10:25 |
|
||
|
почему работает не как надо?
|
|||
|---|---|---|---|
|
#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. Какой-то сокращенный пузырек ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.05.2006, 10:28 |
|
||
|
почему работает не как надо?
|
|||
|---|---|---|---|
|
#18+
Akh Dmitrii K. AkhА как называется этот метод? "Всё дело в пузырьках" :) Ни хрена не пузырек. Может какой-то модернизированнный? Точнее, модифицированный... Основной признак - перестановка соседних элементов по условию сортировки... А вариаций на тему "пузырьков" можно придумать сколько душе угодно... только вот смысл??? Есть же qsort, если лень самому писать нормальную сортировку... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.05.2006, 10:30 |
|
||
|
почему работает не как надо?
|
|||
|---|---|---|---|
|
#18+
никак этот метод не называется. я сам его придумал. спасибо! так работает. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.05.2006, 10:33 |
|
||
|
почему работает не как надо?
|
|||
|---|---|---|---|
|
#18+
разве мой метод плох? :) а вот кстати, почему нельзя написать используя вместо Код: plaintext Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.05.2006, 10:36 |
|
||
|
почему работает не как надо?
|
|||
|---|---|---|---|
|
#18+
случайныйХникак этот метод не называется. я сам его придумал. спасибо! так работает. Молодец. По моему он будет быстрее чем обычный пузырек. Но обрати внимание на свою строчку: Код: plaintext 1. Если у тебя j==0, то цикл пойдет дальше и a[j-1] выйдет за границы массива. Кстати, для корректности, у меня тоже условие за выход границы лучше перенести сразу после while (сделать первым сравнением). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.05.2006, 10:41 |
|
||
|
почему работает не как надо?
|
|||
|---|---|---|---|
|
#18+
случайныйХразве мой метод плох? :) а вот кстати, почему нельзя написать используя вместо Код: plaintext Код: plaintext Ладно, открою тебе тайну. Я тебя обманул. Я сделал сортировку по возрастанию, но в обратном порядке. Можешь считать меня подлецом. Раз ты сам придумал этот метод, попробуй разобраться как сделать по убыванию или докажи, что так сделать нельзя. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.05.2006, 10:45 |
|
||
|
почему работает не как надо?
|
|||
|---|---|---|---|
|
#18+
случайныйХразве мой метод плох? :) а вот кстати, почему нельзя написать используя вместо Код: plaintext Код: plaintext Вот тебе "нормальный" цикл: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. А лучше разберись с двоичной, Шелла или ещё какой-нибудь более "шустрой"... полезнее будет... Тема вообще изъезженная, но всё-таки интересная. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.05.2006, 10:51 |
|
||
|
почему работает не как надо?
|
|||
|---|---|---|---|
|
#18+
о как! а мой метод то оказывается ещё и не для каждой последовательности цифр работает! 8-) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.05.2006, 11:03 |
|
||
|
почему работает не как надо?
|
|||
|---|---|---|---|
|
#18+
случайныйХо как! а мой метод то оказывается ещё и не для каждой последовательности цифр работает! 8-) Ну зачем же изобретательством заниматься... А если уж так сильно хочется, то делай метод универсальным... проверяй на все возможные случаи. "Если неприятность может случится, то случается самая неприятная неприятность в самый неподходящий момент" (с) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.05.2006, 11:09 |
|
||
|
почему работает не как надо?
|
|||
|---|---|---|---|
|
#18+
вот я и прогнал свой метод по полной. не выдержал он, сломался... :-/ а изобретаю просто от нечего делать. говорят изобретательства мозги развивают ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.05.2006, 11:16 |
|
||
|
почему работает не как надо?
|
|||
|---|---|---|---|
|
#18+
Dmitrii K. Ну зачем же изобретательством заниматься... А если уж так сильно хочется, то делай метод универсальным... проверяй на все возможные случаи. Как зечем. Человеку стало интересно. Эксперементы очень полезны. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.05.2006, 11:18 |
|
||
|
почему работает не как надо?
|
|||
|---|---|---|---|
|
#18+
Кстати. У меня тут созрела мысль (исходя, из того, что СлучайныйХ написал, что метод работает не для всех последовательностей). Мне кажется, что самая плохая последовательность для ВСЕХ типов сортировок, это последовательность отсортированнная наоборт. Верно или нет? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.05.2006, 11:21 |
|
||
|
почему работает не как надо?
|
|||
|---|---|---|---|
|
#18+
случайныйХвот я и прогнал свой метод по полной. не выдержал он, сломался... :-/ а изобретаю просто от нечего делать. говорят изобретательства мозги развивают Работает твой метод для последовательности, которая отсортирована наоборт? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.05.2006, 11:22 |
|
||
|
почему работает не как надо?
|
|||
|---|---|---|---|
|
#18+
ну не сильно я ошибся. просто надо было вместо Код: plaintext Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.05.2006, 11:28 |
|
||
|
почему работает не как надо?
|
|||
|---|---|---|---|
|
#18+
AkhРаботает твой метод для последовательности, которая отсортирована наоборт?неа, не работал. а зато щас все грамотно. перетусовал последовательность всяко, метод испытания прошел! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.05.2006, 11:31 |
|
||
|
почему работает не как надо?
|
|||
|---|---|---|---|
|
#18+
AkhКстати. У меня тут созрела мысль (исходя, из того, что СлучайныйХ написал, что метод работает не для всех последовательностей). Мне кажется, что самая плохая последовательность для ВСЕХ типов сортировок, это последовательность отсортированнная наоборт. Верно или нет? Что ты понимаешь под словом "плохая" ? В большинстве случаев она окажется самой трудоёмкой (максимальная длительность выполнения) ввиду того, что придётся производить максимальное количество перестановок... Но это ощутимо только при использовании неэффективных алгоритмов, типа пузырей, вставок и т.п. Скорость сортировки нормальными алгоритмами мало зависит от входных данных... А вообще, эффективность алгоритмов - это целая математическая теория... Достаточно посмотреть хотя бы трёхтомник Кнута, чтобы убедиться ))) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.05.2006, 11:33 |
|
||
|
почему работает не как надо?
|
|||
|---|---|---|---|
|
#18+
случайныйХну не сильно я ошибся. просто надо было вместо Код: plaintext Код: plaintext На выход за границы массива надо проверять в первую очередь, так как там может оказать недопустимая область памяти, а ты уже начинаешь сравнивать с элементом за границами массива. Поэтому проверку за выход границы лучше сделать так: Код: plaintext 1. 2. 3. 4. 5. 6. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.05.2006, 11:36 |
|
||
|
почему работает не как надо?
|
|||
|---|---|---|---|
|
#18+
Dmitrii K. AkhКстати. У меня тут созрела мысль (исходя, из того, что СлучайныйХ написал, что метод работает не для всех последовательностей). Мне кажется, что самая плохая последовательность для ВСЕХ типов сортировок, это последовательность отсортированнная наоборт. Верно или нет? Что ты понимаешь под словом "плохая" ? В большинстве случаев она окажется самой трудоёмкой (максимальная длительность выполнения) ввиду того, что придётся производить максимальное количество перестановок... Но это ощутимо только при использовании неэффективных алгоритмов, типа пузырей, вставок и т.п. Скорость сортировки нормальными алгоритмами мало зависит от входных данных... А вообще, эффективность алгоритмов - это целая математическая теория... Достаточно посмотреть хотя бы трёхтомник Кнута, чтобы убедиться ))) Я не точно выразился. Я имею ввиду не трудоемкость, а проверка алгоритма на корректность. Т.е., если заработает с такой последовательностью, то заработает и с другими. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.05.2006, 11:39 |
|
||
|
почему работает не как надо?
|
|||
|---|---|---|---|
|
#18+
случайныйХнеа, не работал. а зато щас все грамотно. перетусовал последовательность всяко, метод испытания прошел! Покажи народу твое творение. :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.05.2006, 11:40 |
|
||
|
почему работает не как надо?
|
|||
|---|---|---|---|
|
#18+
AkhЯ не точно выразился. Я имею ввиду не трудоемкость, а проверка алгоритма на корректность. Т.е., если заработает с такой последовательностью, то заработает и с другими. Не обязательно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.05.2006, 11:55 |
|
||
|
почему работает не как надо?
|
|||
|---|---|---|---|
|
#18+
Dmitrii K. AkhЯ не точно выразился. Я имею ввиду не трудоемкость, а проверка алгоритма на корректность. Т.е., если заработает с такой последовательностью, то заработает и с другими. Не обязательно. А есть ли какие-то размышления на эту тему? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.05.2006, 12:04 |
|
||
|
почему работает не как надо?
|
|||
|---|---|---|---|
|
#18+
AkhА есть ли какие-то размышления на эту тему? Думаю, не стоит тут начинать исследовательский труд и вдаваться в горячие дискуссии... Всё это уже давно исследовано на гораздо более фундаментальном уровне. Если так интересует данный вопрос, то лучше найти толковую книжку по алгоритмам, а если нужен только один конкретный пример, чтобы убедиться - можно придумать... Да и тема эта больше подходит для ветки "Программирование", поскольку не ограничивается одним конкретным языком. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.05.2006, 12:20 |
|
||
|
почему работает не как надо?
|
|||
|---|---|---|---|
|
#18+
про выход за границы полностью согласен. кстати, при такой постановке: Код: plaintext Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.05.2006, 12:26 |
|
||
|
почему работает не как надо?
|
|||
|---|---|---|---|
|
#18+
AkhПокажи народу твое творение. :)я же писал: для грамотной перстановки изменил строку с вайлом. вот код (не считая проверки на выход за границы(ещё не включил эту проверку, т.к. в данную секунду компил. под рукой нету) ) Код: 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. 41. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.05.2006, 12:33 |
|
||
|
почему работает не как надо?
|
|||
|---|---|---|---|
|
#18+
если не сделать это обнуление: i=0, j=0; то вторая сортировка выполняется не верно. что вполне логично ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.05.2006, 12:35 |
|
||
|
почему работает не как надо?
|
|||
|---|---|---|---|
|
#18+
случайныйХвы как считаете? Да хватит вам уже, чего вы привязались к этой сортировке :) Если так хочется посравнивать - подсчитай количество перестановок в том и в другом случае на разных входных данных, сравни колчество проходов по циклам... А лучше, вот книжицу почитайте... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.05.2006, 12:36 |
|
||
|
почему работает не как надо?
|
|||
|---|---|---|---|
|
#18+
Dmitrii K. случайныйХвы как считаете? Да хватит вам уже, чего вы привязались к этой сортировке :) Если так хочется посравнивать - подсчитай количество перестановок в том и в другом случае на разных входных данных, сравни колчество проходов по циклам... А лучше, вот книжицу почитайте... Скучный ты какой-то ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.05.2006, 12:38 |
|
||
|
почему работает не как надо?
|
|||
|---|---|---|---|
|
#18+
случайныйХвы как считаете? Если ты имеешь ввиду сортировку по убыванию, а не сортировку по возрастанию задом на перед (как мой вариант), то твой вариант логичней. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.05.2006, 12:43 |
|
||
|
почему работает не как надо?
|
|||
|---|---|---|---|
|
#18+
выдержка из ссылки: "ТОМ 3. СОРТИРОВКА И ПОИСК Во втором издании третьего тома содержится полный обзор классических алгоритмов сортировки и поиска." дык тож классические алгоритмы, а то свои - доморощенные! :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.05.2006, 12:45 |
|
||
|
почему работает не как надо?
|
|||
|---|---|---|---|
|
#18+
AkhЕсли ты имеешь ввиду сортировку по убыванию, а не сортировку по возрастанию задом на перед (как мой вариант), то твой вариант логичней. да, именно про сортировку по убыванию я и говорил. а что, разве по возрастанию такая сортировка не логична? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.05.2006, 12:48 |
|
||
|
почему работает не как надо?
|
|||
|---|---|---|---|
|
#18+
случайныйХвыдержка из ссылки: "ТОМ 3. СОРТИРОВКА И ПОИСК Во втором издании третьего тома содержится полный обзор классических алгоритмов сортировки и поиска." дык тож классические алгоритмы, а то свои - доморощенные! :) Кстати, посмотри, может свой найдешь ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.05.2006, 12:49 |
|
||
|
почему работает не как надо?
|
|||
|---|---|---|---|
|
#18+
AkhКстати, посмотри, может свой найдешьА оно мне надо? кстати на счет ссылок. на мой взгляд гораздо результативнее давать ссылки на электронные варианты книг( которые я могу здесь же почитать), чем на рекламу с оглавлением! я всё равно не буду покупать книгу (как думаю и многие) только исходя из оглавления. её как минимум нужно раскрыть на нескольких страницах! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.05.2006, 12:57 |
|
||
|
почему работает не как надо?
|
|||
|---|---|---|---|
|
#18+
AkhСкучный ты какой-то Дык некогда особо... работать надо... А книжицу всё-таки почитайте :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.05.2006, 12:59 |
|
||
|
почему работает не как надо?
|
|||
|---|---|---|---|
|
#18+
Dmitrii K. , а Вы всё-таки пересмотрите взгляды на ссылки ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.05.2006, 13:04 |
|
||
|
почему работает не как надо?
|
|||
|---|---|---|---|
|
#18+
случайныйХкстати на счет ссылок. на мой взгляд гораздо результативнее давать ссылки на электронные варианты книг( которые я могу здесь же почитать), чем на рекламу с оглавлением! я всё равно не буду покупать книгу (как думаю и многие) только исходя из оглавления. её как минимум нужно раскрыть на нескольких страницах! Я привёл ссылку (первую попавшуюся) ради названия книги, а не ради рекламы. Кнут - это классика, не думал, что такие вещи нуждаются в рекламе... Полный электронный вариант в сети вы вряд-ли найдёте... если-б нашёл, дал бы ссылку. А фрагменты найти - не проблема было бы желание... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.05.2006, 13:08 |
|
||
|
|

start [/forum/topic.php?all=1&fid=57&tid=2031229]: |
0ms |
get settings: |
6ms |
get forum list: |
10ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
142ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
48ms |
get tp. blocked users: |
1ms |
| others: | 219ms |
| total: | 440ms |

| 0 / 0 |
