1-3
3-5
2-4
1-2
2-3
3-4
4-5
Скорее всего не правильно, так как не получается.
Рассмотрим пример, где вместо проводов возьмём числа и расположим их по порядку начиная с наименьшего, типа наименьшее значит надо резать первым, вторым которое идёт за ним и т.д.
1:10
2:17
3:99
4:3
5:34
То есть первое число 10, второе 17, третье 99 и т.д.
Первое сравнение 1-3
1:10 3:99
Что означает что сейчас 10 меньше чем 99 и поэтому число 10 первое, а 99 второе.
Второе сравнение 3-5
1:10 3:99
5:34
Это означает, что числа 10 и 34 мы не сравнивали и не знаем какое из них больше, а какое меньше поэтому они расположены по вертикали на одном месте.
Третье сравнивание 2-4
PHP:
1:10 3:99 | 4:3 2:17
5:34 |
4:3 2:17
1:10 3:99
5:34
Пятое сравнивание 2-3
4:3
1:10 2:17 3:99
5:34
Шестое сравнивание 3-4
4:3
1:10 2:17 3:99
5:34
Тот же результат что и в пятом сравнении так как из предыдущих сравнений видно и так что число 3 меньше чем 99.
Седьмое сравнение 4-5
PHP:
1:10 2:17 3:99
4:3 5:34
Надо было ещё сравнивать 1-5, а потом ещё 2-5 что бы получить правильный результат, а это 9 сравнений. Если бы вместо числа 34 было число 9 то тогда хватило бы только сравнения 1-5, а это 8 сравнений.
При пузырьковой сартировке при 5 числах, надо 10 сравнений.
Код php вставил потому что пробелы убирались.
Вот ещё одна очень интересная логическая задача:
У Вас есть две баночки с очень дорогими пилюлями, маркированные "А" и "В". В день Вам нужно съесть по одной пилюле из каждой баночки, если же Вы съедите больше одной пилюли, то умрете... Однажды Вы взяли одну пилюлю из баночки "А", а когда стали вытряхивать пилюлю из банки "В", случайно выпало две пилюли. Теперь у Вас на руке лежат три пилюли совершенно неразличимые по внешнему виду. Как с наименьшими потерями выйти из этой ситуации?
Останнє редагування:
