본문 바로가기
Algorithm Practice

정렬 알고리즘

by Srff5123 2023. 12. 19.

선택 정렬

-  처리되지 않은 데이터 중에서 가장 작은 데이터를 선택하여 맨 앞에 있는 데이터와 바꾸는 것을 반복

 

 

삽입 정렬

-  처리되지 않은 데이터를 골라 적절한 위치에 삽입, 선택 정렬에 비해 구현 난이도가 높은 편, 일반적으로 더 효율적으로 동

 

퀵 정렬

-  기준 데이터를 설정하고 그 기준보다 큰 데이터와 작은 데이터의 위치를 바꾸는 방법, 일반적인 상황에서 가장 많이 사용되는 정렬 알고리즘 중 하나, 병합 정렬과 더불어 대부분의 프로그래밍 언어의 정렬 라이브러리의 근간이 되는 알고리즘. 가장 기본적인 퀵 정렬은 첫 번째 데이터를 기준 데이터(Pivot)으로 설정

 

 

병렬 정렬

-  병합 정렬은 분할 정복 방식을 사용해 데이터를 분할하고, 분할한 집합을 정렬하며 합치는 알고리즘 으로

    시간 복잡도는 O(nlogn)

 

 

연결하여 만들 수 있는 가장 큰 수 찾기

 

 

main 함수에서 sort 정렬 알고리즘을 활용하여 벡터의 처음값 ~ 끝값을 comp함수로 보내주어 문자열을 앞뒤로 합쳤을 때를 비교하여 return해줌

그 후 정렬된  벡터를 반복문을 통하여 a 에 합쳐주고 출력을 해주면 연결하였을 때 가장 큰 값이 나오게 됌.