목록2024/11/03 (2)
Hippo's data
이번에는 비교정렬 알고리즘인 선택 정렬 (Selection Sort) 알고리즘에 대해 알아보겠습니다! # 동작과정 선택정렬은 매우매우매우 간단합니다매번 비교마다 최솟값(오름차순 정렬) 혹은 최댓값(내림차순 정렬)을 제일 앞으로 보내주면 되는데요 간단한 만큼 직관적이지만 시간복잡도가 꽝입니다... # Python 코드오름차순으로 정렬하는 코드입니다!인덱스를 처음부터 순회하며 매번 최솟값 인덱스를 찾아 해당 위치의 값과 최솟값 인덱스의 값을 교환해줍니다 for i in range(len(arr)): min_index = i # 현재 위치를 최솟값 위치로 가정 for j in range(i + 1, len(arr)): if arr[j] arr[min_index]: # 더 작은 ..
오늘은 비교정렬 알고리즘인 삽입 정렬 (Insertion Sort) 알고리즘에 대해 알아보겠습니다! # 동작과정 삽입정렬은 이름과 같이 매번 적절한 위치에 해당 값을 삽입하는 알고리즘입니다!간단한 예시로 트럼프 카드 게임을 생각하면 되는데욥! 1. 카드를 뽑고 2. 위치를 찾고 3. 삽입 하는 과정을 생각하면 됩니다!! 아래는 5,3,4,1,2 다섯개의 숫자를 정렬하는 예시인데욥동그라미 숫자는 동그라미 왼쪽의 정렬된 값에서 매번 삽입될 위치를 찾는 식으로 동작합니다! # Python 코드# 삽입 정렬 알고리즘for i in range(1, len(arr)): key = arr[i] # 삽입할 요소 j = i - 1 # 삽입할 요소 보다 왼쪽에 위치한 인덱스들 비교 # ar..