Алгоритмы сортировки в JS - сортировка вставками

Сортировка вставками это упорядочивание коллекции путем вставки каждого встреченного значения на правильную позицию.

В этом случае мы не проходим всю коллекцию при каждой итерации (как в сортировке пузырьком и выбором). Вместо этого мы начинаем со сравнения значений элементов с индексами 0 и 1. Если последнее значение меньше первого, они меняются местами. После этого мы перемещаемся к элементу с индексом 2 и сравниваем его значение со значениями двух предыдущих элементов (сначала с индексом 1, потом с индексом .

Каждый раз, находя более высокое значение, вы размещаете его правее. Найдя правильную позицию, вы вставляете содержимое ячейки с индексом 2 в ячейку на нужной позиции.

Это как будто вы вынимаете содержимое следующей ячейки и возвращаетесь с ним к предыдущей. Если содержимое предыдущей ячейки имеет больше значение, что то, которое вы «держите», вы перемещаете содержимое предыдущей ячейки в следующую. Это продолжается, пока вы не найдете подходящую ячейку, куда можно поместить значение, находящееся у вас «в руках».

#sorting #algorithms #insertionsort #javascript

image