파이썬 알고리즘중 퀵정렬 예제 정보
파이썬 알고리즘중 퀵정렬 예제본문
arr=[5,3,8,4,9,1,6,2,7]
# 퀵정렬 함수 정의
def quick_sort(arr):
# 배열의 길이가 1 이하이면 정렬할 필요가 없으므로 그대로 반환
if len(arr) <= 1:
return arr
# 배열의 첫 번째 요소를 피벗으로 선택
pivot = arr[0]
# 피벗을 제외한 나머지 요소들을 피벗보다 작은 것과 큰 것으로 분리
left = [x for x in arr[1:] if x < pivot]
right = [x for x in arr[1:] if x >= pivot]
# 왼쪽과 오른쪽 부분을 재귀적으로 퀵정렬하고, 피벗과 합쳐서 반환
return quick_sort(left) + [pivot] + quick_sort(right)
# 예시 배열
arr = [5, 3, 8, 4, 9, 1, 6, 2, 7]
# 퀵정렬 함수 호출
sorted_arr = quick_sort(arr)
# 정
print(arr)
print(sorted_arr)
추천
0
0
댓글 1개

상관 없는 글인듯
** 삭제요망