알고리즘 준비 3일차

kinghong97·2022년 1월 25일
0

정렬

데이터를 특정한 기준에 따라 순서대로 나열한 것

선택 정렬

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

삽입 정렬

처리되지 않은 데이터를 하나씩 골라 적절한 위치에 삽입합니다

선택 정렬에 비해 구현 난이도가 높은 편이지만 일반적으로 더 효율적으로 동작합니다

퀵 정렬

기준 데이터를 설정하고 그 기준보다 큰 데이터와 작은 데이터의 위치를 바꾸는 방법

빠르다

일반적인 상황에서 가장 많이 사용되는 정렬 알고리즘

병합 정렬과 더불어 대부분의 프로그래밍 언어의 정렬 라이브러리의 근간이 되는 알고리즘

가장 기본적인 퀵 정렬은 첫 번째 데이터를 기준 데이터(Pivot)로 설정

피벗 값을 정하고 왼쪽에서 피벗 값보다 큰 것 오른쪽에서 피벗 값보다 작은 것을 선택해서 바꿔준다

위치가 엇갈리는 경우 피벗 값과 작은 것의 위치를 바꾼다

그러면 피벗값을 중간으로 데이터가 분할된다 작은 값과 큰 값으로 = 분할

다시 이것을 왼쪽과 오른쪽에서 반복

0개의 댓글