array = [5,7,9,0,3,1,6,2,4,8]
def quick(array):
  if(len(array) <= 1):
    return array

  pivot = array[0]
  tail = array[1:]

  left_side = [x for x in tail if x <= pivot] # 분할된 왼쪽 부분
  right_side = [x for x in tail if x > pivot] # 분할된 오른쪽 부분
  #print(pivot)
  #print(left_side)
  #print(right_side)
  # 분할 이후 왼쪽 부분과 오른쪽 부분에서 각각 정렬을 수행하고, 전체 리스트를 반환
  return quick(left_side) + [pivot] + quick(right_side)

print(quick(array))
반응형

+ Recent posts