Нашёл в интернете реализацию алгоритма сортировки вставками в виде рекурсивной функции. И не могу понять, как и какие в неё передавать значения аргументов?
Вот сама функция:
//Взято от сюда https://ru.wikibooks.org/wiki/%D0%A0%D0%B5%D0%B0%D0%BB%D0%B8%D0%B7%D0%B0%D1%86%D0%B8%D0%B8_%D0%B0%D0%BB%D0%B3%D0%BE%D1%80%D0%B8%D1%82%D0%BC%D0%BE%D0%B2/%D0%A1%D0%BE%D1%80%D1%82%D0%B8%D1%80%D0%BE%D0%B2%D0%BA%D0%B0/%D0%92%D1%81%D1%82%D0%B0%D0%B2%D0%BA%D0%B0%D0%BC%D0%B8#C++_(%D0%BE%D0%BF%D1%82%D0%B8%D0%BC%D0%B8%D0%B7%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD)
template <typename Item>
void exch(Item &A, Item &B) {
Item t = A; A = B; B = t;
}
template <typename Item>
void compexch(Item &A, Item &B) {
if (B < A) exch(A, B);
}
template <typename Item>
void insort(Item a[], int L, int R) {
for(int i = R; i > L; i--)
compexch(a[i - 1], a[i]);
for (int i = L + 2; i <= R; i++) {
int j = i;
Item cur = a[j];
while (a[j - 1] > cur) {
a[j] = a[j - 1];
j--;
}
a[j] = cur;
}
}