loverdevelop15   4년 전

퀵소트로 동적할당하여 문제를 풀었는데 자꾸 메모리 초과가 뜨네요...

어떻게 해결하면 좋을까요??

chogahui05   4년 전

quick sort의 depth가 깊어지는 경우 메모리 초과가 납니다.

seico75   4년 전

  1. 우선 +/-10^9  은 long 형이면 충분합니다.

2. left, right 를 따로 메모리 할당을 받는 것은 일반적이지 않은 것 같습니다.

보통 퀵소트에서는 추가 메모리 할당 없이 처리를 합니다.

3. 내부에서 할당을 하시겠다고 하면 end-start 크기면 되지 않을까 합니다. 

    그리고 다 쓰고 나서 free 를 안하시네요.  main 에서도 마찬가지고..

    malloc free 페어를 맞추는 습관이 없으면 나중에 대재앙을 경험하실 지도 모릅니다.

4. 이 문제는 전체 quick 소트하면 시간초과 날지도 모릅니다. 일단 메모리 문제 확인하고 나서 시간초과나면 더 고민해보시는 것도 좋겠습니다.

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