dhyun0601   3년 전

간선 리스트와 같이 성분 2개의 경우의 정렬일 때 어떻게 하는지 궁금합니다... ㅜ 제 생각대로 했는데 시간 뻑이 나네용

(시작점, 도착점)과 같이 구조체 Path와 그 성분 int start, int end으로 주어졌을 때 start 기준으로 정렬하되 같은 start 내에서 end를 기준으로 정렬하는 법 어떻게 구현하는지요...

int compare(const void* a, const void* b)

{

Path* num1 = (Path*)a, * num2 = (Path*)b;

if ( (num1->start < num2->start) || (num1->start == num2->start && num1->end < num2->end) ) return -1;

if ( (num1->start > num2->start) || (num1->start == num2->start && num1->end > num2->end) ) return 1;

return 0;

}

제 생각에서는 이렇게 하는 것 같고 예제코드는 돌아가는데...

막상 돌려보면 시간 초과가 나네용... ㅠㅜ

stdlib.h에서는 기준 하나로밖에 정렬이 안되나요?

soloranker66   3년 전

start if문 밑에, end를 조건으로 if문을 추가하시면 되요.

댓글을 작성하려면 로그인해야 합니다.