1. Концепция алгоритма.
Каждый раз первый элемент вынимается из неупорядоченного списка и вставляется в соответствующую позицию упорядоченного списка, так что упорядоченный список остается упорядоченным.
2. Алгоритмическое мышление.
Предположим, что сортируемые записи хранятся в массиве R[1..n]. Первоначально R[1] образует упорядоченную область, а неупорядоченная область — это R[2..n]. От i=2 до i=n R[i] последовательно вставляется в текущую упорядоченную область R[1..i-1], создавая упорядоченную область, содержащую n записей.
public static void InsertSort(int[] array) { int len = array.length; for (int i = 1; i <len; i++) { for (int j = i; j > 0; j--) { if ( array[j] < array[j - 1]) { Sort.swap(array, j, j - 1); // Обменяем j и j-1 } else Break } } }
Схема сортировки вставками:
Вышеупомянутое — это весь контент, которым вы поделились в этой статье. Я надеюсь, что он будет полезен всем для понимания алгоритма сортировки вставками.