자료구조 및 알고리즘

1. 선택 정렬(Selection Sort)

지늬j 2022. 8. 25. 13:32

# 선택 정렬

  • 가장 간단하고 직관적인 알고리즘이다.
  • 느린 알고리즘에 속하지만 구현하기가 쉬워 간단한 자료에 있어 사용이 많다.
  • 시간 복잡도 : O(n^2)

# 선택 정렬 방법

  • 가장 작은 값을 선택하여 자리 바꾸기를 함.
  • min value칸을 하나 만들고 앞에서부터 하나씩 min value칸에 값을 넣는다. > min value에 들어간 수보다 뒤에 위치하는 수들을 하나씩 비교 > 더 작은애를 minvalue에 넣어주기.

 

# 코드 설계

  • 선택정렬은 이중for문을 이용해서 사용

선택 정렬을 이용해서 정렬

선택정렬을 하기 위해선 일단 min-value저장하는 칸이 하나 필요하다.

제일 앞에서부터 min-value에 값을 하나씩 넣고 넣은 값 뒤에 숫자들을 모두 비교해서 min-value에 들어있는 수보다 크기가 작은 값이 나오면 min-value에 넣어준다. 한바퀴를 돌고 나면 min-value에 있는 수와 처음 min-value에 들어갔었던 값의 자리를 바꿔준다. 하나씩 전부다 비교해주는 것이기 때문에 속도가 느리다.

'자료구조 및 알고리즘' 카테고리의 다른 글

5. 퀵소트(Quick Sort)  (0) 2022.08.27
6. 힙 정렬(Heap Sort)  (0) 2022.08.27
4. 병합 정렬 (Merge Sort)  (0) 2022.08.26
3. 삽입정렬(Insertion Sort)  (0) 2022.08.26
2. 버블 정렬(Bubble Sort)  (0) 2022.08.25