예를들어 a b c 3개의 int변수를갖는 구조체 배열 100만개를 항목별로 오름차순으로 정렬하고 싶다.
이러면 나는 a에 대하여 정렬하고
그다음 a변수가 같은 애들끼리 범위지정해서 b에대해
정열하고
그다음 b변수가 같은 애들끼리 범위지정해서 c에대해 정열하고 이렇게 구현하는데...
넘 귀찮고 정렬이란게 워낙 많이 쓰니까 이렇게 안해도 되게끔 사람들이 많이 쓰고 있을거같은데 뭐 다른수가 없음?
이러면 나는 a에 대하여 정렬하고
그다음 a변수가 같은 애들끼리 범위지정해서 b에대해
정열하고
그다음 b변수가 같은 애들끼리 범위지정해서 c에대해 정열하고 이렇게 구현하는데...
넘 귀찮고 정렬이란게 워낙 많이 쓰니까 이렇게 안해도 되게끔 사람들이 많이 쓰고 있을거같은데 뭐 다른수가 없음?
일단 넌 sort stability가 뭔지 모르는 시점에서 쓰레기야
쓰레기 구글링하러갑니다
a, b, c를 재조합해서 64비트 이내의 정수로 순서 유지되게 표현할 수 있으면 그렇게 하는 게 최선이고, 안 되면 조건문을 이용한 비교함수를 만들거나 c기준으로 정렬 - b기준으로 stable하게 정렬 - a기준으로 stable하게 정렬해야지
ㅇㅎ a b a c b a 이 순서하면 되겠네
근데 내가 원래 짜던대로하는게 시간복잡도는 더 적을꺼 같긴한데
아니 그냥 c b a 이렇게만 해도 되는거 같은데?
저럴거면 그냥 compare operator 오버로딩 하든가 아님 comparator 만들어서 써라
그 정렬이 아니네
나도 alignment 생각함