Skip to content

Реализация BubbleSort на Go: кейсы с отсортированным слайсом

Итак, мы достигли хороших показателей в реализации. Теперь рассмотрим ситуации, когда слайс частично или полностью отсортирован.

  1. Запустим бенчмарк и увидим, что на скорость нашего алгоритма это никак не повлияло.

  2. Для начала частично отсортируем наш массив данных:

  1. Запустим бенчмарк

  1. Попробуем оптимизировать данную часть, проверяя, был ли обмен местами в цикле:

  1. Запустим наш бенчмарк:

Теперь мы сократили до 12.45 ns на операцию.

  1. Проверим и тот случай, когда массив полностью отсортирован:

Результат будет чуть быстрее:

Отлично! На этом наша практика в данной теме подошла к концу. Последний вариант решения лучше запомнить наизусть.

Рекомендуем изучить дополнительные материалы по теме: