T'SPACE

다채로운 에디터들의 이야기

728x90
반응형

sort 3

Merge Sort 합병 정렬

효율적인 정렬을 위한 강력한 무기, 합병 정렬 프로그래밍 분야에서 정렬 알고리즘은 매우 중요한 위치를 차지합니다. 데이터를 특정 순서로 정렬하는 것은 다양한 문제를 해결하는 데 필수적입니다. 이러한 정렬 알고리즘 중 하나인 머지 소트(Merge Sort)는 분할 정복(Divide and Conquer) 기법을 활용하여 효율적이고 안정적인 정렬을 수행합니다. 작동 원리 살펴보기 머지 소트는 다음과 같은 세 단계로 진행됩니다. 1. 분할(Divide) 먼저, 정렬해야 할 배열을 두 개의 서브 배열로 나눕니다. 이 과정을 재귀적으로 반복하여 배열의 크기가 1이 될 때까지 계속 분할합니다. 배열의 크기가 1이 되면 더 이상 나눌 수 없으므로, 이를 기저 조건(base case)으로 합니다. 2. 정복(Conqu..

퀵 정렬 퀵 소트 quick sort

퀵 정렬(Quick Sort) 이해하기 퀵 정렬이란? 퀵 정렬은 분할 정복(Divide and Conquer) 기법을 활용한 효율적인 정렬 알고리즘입니다. 1959년 영국 컴퓨터 과학자 토니 호어(Tony Hoare)가 개발했습니다. 불안정 정렬에 속하며, 비교 기반의 정렬 알고리즘 중 하나입니다. 동작 원리 피벗(Pivot) 선택: 정렬할 리스트에서 하나의 원소를 피벗으로 선택합니다. 일반적으로 리스트의 첫 번째 또는 마지막 원소를 피벗으로 사용합니다. 파티셔닝(Partitioning): 피벗을 기준으로 리스트를 두 개의 부분 리스트로 분할합니다. 피벗보다 작은 값은 왼쪽 부분 리스트에, 큰 값은 오른쪽 부분 리스트에 배치합니다. 재귀 호출(Recursive Call): 분할된 두 개의 부분 리스트에 ..

선택정렬 Selection Sort

안녕하세요, 오늘은 선택 정렬(Selection Sort)에 대해 알아보겠습니다. 선택 정렬은 가장 기본적인 정렬 알고리즘 중 하나입니다. 정렬되지 않은 배열에서 작은 값부터 차례대로 선택해 앞쪽으로 가져오는 방식으로 정렬을 수행합니다. 구현 방법이 매우 간단하고 이해하기 쉬운 것이 장점입니다. 선택 정렬의 동작 원리 배열에서 가장 작은 값을 선택합니다. 선택한 값을 맨 앞으로 옮깁니다. (첫 번째 자리) 남은 배열에서 두 번째로 작은 값을 선택합니다. 선택한 값을 두 번째 자리로 옮깁니다. 이런 식으로 배열의 끝까지 반복합니다. 이렇게 하면 매 단계마다 작은 값부터 순서대로 앞으로 이동하게 되어 정렬이 완성됩니다. 간단한 예시로 살펴보겠습니다. [5, 3, 8, 4, 9] 초기 배열 1. [3, 5, ..

728x90
반응형