sort를 써야하는 이유

  • qsort는 말 그대로 quick sort를 사용하는 것
  • 헤더의 sort()는 selection + insertion + quick 형태로 최악의 경우에도 O(N^2)이 아니다.

Code

#include <iostream>
#include <algorithm>
using namespace std;

struct Node {
  int num;
  char bloodType;
};

bool comp(const Node &a, const Node &b) {
  return a.num > b.num;
}

int main() {

  Node arr[4] = {
    {3, 'A'},
    {1, 'B'},
    {7, 'O'},
    {2, 'M'},
  }

  sort(arr, arr + 4, comp);

  for(int i = 0; i < 4; i++)
    cout << arr[i].num << " / " << arr[i].bloodType << endl;

}