TIL
< Computer Science 30일차 >
정렬 알고리즘에 대해서 아는대로 설명해 주세요.
단답형:
정렬 알고리즘은 데이터를 특정 순서대로 배열하는 방법입니다. 대표적으로 버블, 퀵, 병합 정렬 등이 있으며, 각각의 특징과 시간 복잡도에 따라 적절한 상황에서 사용됩니다.
상세한 설명:
- 버블 정렬:
- 특징: 인접한 두 원소를 비교하여 크기가 잘못되어 있으면 교환하는 방식으로 정렬합니다.
- 시간 복잡도: 평균 및 최악의 경우 O(n^2)
- 용도: 데이터의 양이 적을 때 사용하기 적합합니다.
- 퀵 정렬:
- 특징: 피벗을 기준으로 작은 원소와 큰 원소를 분할하여 정렬하는 방식입니다.
- 시간 복잡도: 평균 O(n log n), 최악의 경우 O(n^2)
- 용도: 일반적인 상황에서 빠른 정렬 속도를 제공하므로 널리 사용됩니다.
- 병합 정렬:
- 특징: 데이터를 반으로 나누어 정렬한 후, 병합하는 방식으로 정렬합니다.
- 시간 복잡도: O(n log n)
- 용도: 안정적인 정렬이 필요한 경우에 사용됩니다.