알고리즘(python)/정렬
[Python]정렬 백준 10989
문제N개의 수가 주어졌을 때, 이를 오름차순으로 정렬하는 프로그램을 작성하시오.입력첫째 줄에 수의 개수 N(1 ≤ N ≤ 10,000,000)이 주어진다. 둘째 줄부터 N개의 줄에는 숫자가 주어진다. 이 수는 10,000보다 작거나 같은 자연수이다.출력첫째 줄부터 N개의 줄에 오름차순으로 정렬한 결과를 한 줄에 하나씩 출력한다. 이번엔 수에 제한이 걸려있다.10000보다 작거나 같은 자연수 중복된 수가 굉장히 많이 반복될것이다.기수정렬과 카운팅정렬을 이용할수 있는데 기수정렬의 경우문제에서 준 메모리의 양으로는 부족하다.기수정렬의 경우 버킷을 이용하는데 1000만개의 숫자를 배열에 담는데만 40MB가 사용된다. 10000이하면 하나의 인자당약 2byte(2^14~2^15bit)정도가 최소로 잡아도 20MB..
2019. 12. 25. 22:32
최근댓글