퀵정렬(2)
-
[알고리즘]정렬-퀵정렬(Quick Sort)
숭실대학교 컴퓨터학부의 알고리즘 수업을 들으며 정리한 내용입니다.참고교재: 쉽게 배우는 알고리즘(문병로)기본적인 정렬 알고리즘 O(n^2)1.선택정렬2.버블정렬3.삽입정렬고급 정렬 알고리즘 O(n*logn)1.병합정렬2.퀵정렬3.힙정렬특수 정렬 알고리즘 O(n)1.계수정렬2.기수정렬퀵정렬이란퀵 정렬(Quick Sort)은 분할 정복 방식의 효율적인 정렬 알고리즘 중 하나입니다. 퀵 정렬은 배열을 두 부분으로 분할하고, 각 부분을 재귀적으로 정렬하여 전체 배열을 정렬합니다. 분할 시 기준이 되는 '피벗'을 선택하고, 피벗보다 작은 요소는 왼쪽, 큰 요소는 오른쪽으로 이동합니다. 퀵 정렬의 시간 복잡도는 평균적으로 O(n log n)입니다. 하지만 최악의 경우(이미 정렬된 배열 등) O(n^2)이 될 수 있..
2024.01.07 -
[알고리즘] 정렬 알고리즘
숭실대학교 컴퓨터학부의 알고리즘 수업을 들으며 정리한 내용입니다.참고교재: 쉽게 배우는 알고리즘(문병로)다양한 정렬 알고리즘정렬 알고리즘은 데이터를 특정한 순서로 나열하는 알고리즘을 말합니다. 여러 가지 종류의 정렬 알고리즘이 있으며, 각각의 알고리즘은 그 성능과 효율성에 차이가 있습니다. 기본적인 정렬 알고리즘 O(n^2)선택 정렬(Selection Sort): 주어진 리스트 중에서 최소값을 찾고, 그 값을 맨 앞에 위치한 값과 바꾸는 방법입니다. 이 과정을 반복하여 정렬을 완성합니다.버블 정렬(Bubble Sort): 인접한 두 개의 원소를 비교하여 자리를 바꾸는 과정을 반복하여 모든 원소를 순서에 맞게 만드는 방법입니다.삽입 정렬(Insertion Sort): 각 숫자를 적절한 위치에 삽입하는 방..
2023.12.31