Если у меня есть n элементов, скажем,
a, b, c
Тогда я могу использовать 6 сравнений с (n-1) компараторами для сортировки элементов:
if (a > b && b > c) {
a, b, c
}
else if (a < b && b < c) {
c, b, a
}
else if (b > a && a > c) {
b, a, c
}
else if (a > c && c > b) {
a, c, b
}
else if (b > c && c > a) {
b, c, a
}
else if (c > a && a > b) {
c, a, b
}
Теперь у меня двавопросы:
Охватывают ли эти 6 сравнений все возможные комбинации 3 элементов?
Если да, верно ли сравнивать n элементов, п!нужны сравнения с (n-1) компараторами?