백준 2751 : 수 정렬하기 2

혀니앤·2021년 2월 23일
0

C++ 알고리즘

목록 보기
26/118

★★☆☆☆

2750번과 같은 방식으로 풀려고 했는데 시간 초과가 나왔다..
알고보니 C++에서는 algorithm 이라는 라이브러리가 있어서, 그 안에서 정렬 함수를 호출할 수 있었다.
직접 구현헀던 삽입 정렬의 경우에는 for문을 2개 사용하여 O(n^2)의 시간 집적도가 나왔지만,
sort 함수는 O(nlogn)의 집적도를 가진다고 하니, 시간이 더 절약될 수 있었다.

<나의 풀이>

1000000 개의 배열 값들을 정렬해주기 위해 sort함수를 사용했다.
sort 함수의 매개변수로 활용하기 위해 값들을 vector에 넣어주었고,
그 결과값을 출력하기만 하면 된다.

https://github.com/jeongopo/DaliyCodeCpp/commit/a9dfec9d51ac93d6a8fbdd55bb2950ad081596cf

<다른 사람의 풀이>

직접 구현하는 방법을 사용하여, 새로운 배열을 만들고
가운데를 기준으로 왼쪽, 오른쪽을 나누어 재귀함수를 구현한다.

https://ldgeao99.tistory.com/334

  • 옛날 글이긴 하지만.. 어떤 사람은 vector가 아닌 배열에 넣은 후 sort했더니 시간초과가 나왔다는 글이 있다.

<Alrorithm 라이브러리 참고>

https://modoocode.com/256
이 블로그에 라이브러리 요소가 잘 정리되어 있다.

profile
일단 시작하기

0개의 댓글