파이썬 알고리즘중 퀵정렬 예제 > 그누보드6 팁자료실

그누보드6 팁자료실

그누보드6, 파이썬에 대한 팁과 자료를 올려주세요.
그누보드6 실서비스를 위한 웹서버 설정

파이썬 알고리즘중 퀵정렬 예제 정보

파이썬 알고리즘중 퀵정렬 예제

본문

 

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)

2113676309_1705544698.0615.jpg

추천
0
  • 복사

댓글 1개

© SIRSOFT
현재 페이지 제일 처음으로