Есть ли более эффективный способ написать пузырьковую сортировку при работе с указателями на ob js? Это работает без проблем, но я хочу посмотреть, смогу ли я сжать все операторы if в один оператор if.
void bubbleSort(Record* arr[], int size, int n) {
for (size_t i = 0; i < size; i++)
// Last i elements are already in place
for (int j = 0; j < size - i - 1; j++)
switch (n) {
case 1:
if (arr[j]->ID > arr[j + 1]->ID)
swap(arr[j], arr[j + 1]);
break;
case 2:
if (arr[j]->name > arr[j + 1]->name) {
swap(arr[j], arr[j + 1]);
}
break;
case 3:
if (arr[j]->amount > arr[j + 1]->amount)
swap(arr[j], arr[j + 1]);
break;
case 4:
if (arr[j]->price > arr[j + 1]->price)
swap(arr[j], arr[j + 1]);
break;
}
}