본문 바로가기
반응형

sort2

병합 정렬 (Merge Sort) 총 정리 - 개념, 원리, 동작 예시, 시간복잡도, C언어, Java, Python 예시코드, 주의점, 장단점 1. 병합 정렬이란?병합 정렬은 "분할 정복(Divide and Conquer)" 기법을 이용한 정렬 알고리즘으로, 리스트를 반으로 나누고 각각을 재귀적으로 정렬한 후 병합하여 정렬된 리스트를 만드는 방식입니다. 안정 정렬에 속하며, 대규모 데이터에서 특히 효율적입니다.  2. 원리배열을 두 부분으로 나눕니다.각 부분을 재귀적으로 병합 정렬합니다.두 정렬된 부분을 하나로 병합합니다.  3. 동작 예시 (구체적인 설명)정렬할 배열: [38, 27, 43, 3, 9, 82, 10]배열 분할:[38, 27, 43, 3]와 [9, 82, 10]으로 나눕니다.왼쪽 부분 [38, 27, 43, 3] 정렬:다시 [38, 27]과 [43, 3]으로 나눕니다.[38, 27]은 [27, 38]로 정렬.[43, 3]은 [3.. 2024. 12. 31.
코딩테스트에서 자주 쓰이는 STL 총정리 오늘은 코딩테스트에서 자주 등장하는 STL들에는 어떤 것들이 있는지 알아보고 구체적인 예시를 통해 사용방법까지 정리해보겠습니다.1. STL이란?STL(Standard Template Library)은 C++에서 제공하는 표준 라이브러리로, 데이터를 관리하고 조작할 수 있는 컨테이너와 알고리즘, 그리고 이들을 연결하는 이터레이터로 구성됩니다. 2. STL 주요 구성 요소컨테이너(Container): 데이터를 저장하고 관리하는 클래스 (e.g., vector, map, set)알고리즘(Algorithm): 정렬, 탐색, 변환 등 데이터 조작을 위한 함수 모음이터레이터(Iterator): 컨테이너와 알고리즘을 연결하는 역할 3. 코딩테스트에서 가장 많이 사용하는 STL (1) Vector: 동적 배열1) 특징.. 2024. 12. 23.
반응형