Как работает сортировка пузырьком? Объясните, пожалуйста, как работает сортировка пузырьком? Смысл понятен, но хотелось бы подробно , шаг за шагом, что происходит в каждой строчке и в каждом цикле: Вот такой код: $array[$y]) { $c = $array[$i]; $array[$i] = $array[$y]; $array[$y] = $c; } } } } $arr = array(92, 64, 87, 18, 17, 66, 50, 88, 99, 77); bubble_sort($arr); echo ''; print_r($arr); echo ''; ?>
P.S.: Прошу без сарказма, я понимаю, что это лёгкая задачка, но я только начинающий.
Шаг за шагом алгоритм сортировки пузырьком работает следующим образом:
Изначально массив выглядит следующим образом: [92, 64, 87, 18, 17, 66, 50, 88, 99, 77]
Первая итерация внешнего цикла ($i = 0):
Внутренний цикл $y начинается с $i + 1 (то есть с 1).Сравниваются элементы array[0] (92) и array[1] (64). Так как 92 > 64, элементы меняются местами.Таким образом массив становится [64, 92, 87, 18, 17, 66, 50, 88, 99, 77]
Вторая итерация внешнего цикла ($i = 1):
Внутренний цикл $y начинается с $i + 1 (то есть с 2).Сравниваются элементы array[1] (92) и array[2] (87). Так как 92 > 87, элементы меняются местами.Таким образом массив становится [64, 87, 92, 18, 17, 66, 50, 88, 99, 77]Продолжаются итерации внешнего и внутреннего циклов до тех пор, пока все элементы не будут отсортированы по возрастанию.
Шаг за шагом алгоритм сортировки пузырьком работает следующим образом:
Изначально массив выглядит следующим образом: [92, 64, 87, 18, 17, 66, 50, 88, 99, 77]
Первая итерация внешнего цикла ($i = 0):
Внутренний цикл $y начинается с $i + 1 (то есть с 1).Сравниваются элементы array[0] (92) и array[1] (64). Так как 92 > 64, элементы меняются местами.Таким образом массив становится [64, 92, 87, 18, 17, 66, 50, 88, 99, 77]Вторая итерация внешнего цикла ($i = 1):
Внутренний цикл $y начинается с $i + 1 (то есть с 2).Сравниваются элементы array[1] (92) и array[2] (87). Так как 92 > 87, элементы меняются местами.Таким образом массив становится [64, 87, 92, 18, 17, 66, 50, 88, 99, 77]Продолжаются итерации внешнего и внутреннего циклов до тех пор, пока все элементы не будут отсортированы по возрастанию.На выходе получаем отсортированный массив: [17, 18, 50, 64, 66, 77, 87, 88, 92, 99]
Надеюсь, что объяснение было понятным и помогло вам понять, как работает алгоритм сортировки пузырьком.