정말 질문 안올리고 해결하고 싶은데ㅜㅜ
저는 뭐가 틀린건지 도저히 모르겠습니다....
- 검색을 통해 퀵소트를 공부하였습니다.
- 퀵소트를 파이썬으로 구현하였습니다.
- 맞게 한 것 같은데... 잘 안됩니다... 뭐가 틀린건지 모르겠습니다..
소스 붙여보겠습니다
*******************Function*******************
def swap(a,b):
return b,a
def partition(ar, low, high):
pivot = ar[low]
index_low = low + 1
index_high = high
while low <= high:
while ar[index_low] <= pivot and index_low < index_high:
index_low +=1
while ar[index_high] >= pivot and index_low <= index_high:
index_high -=1
if index_low < index_high:
ar[index_low], ar[index_high] = swap(ar[index_low], ar[index_high])
else:
break
ar[low], ar[index_high] = swap(ar[low], ar[index_high])
return high
def quickSort(ar, low, high):
if low < high:
index = partition(ar,low, high)
quickSort(ar, low, index-1)
quickSort(ar, index+1, high)
************* Main ************************
ar = [6,4,2,3,1,5]
quickSort(ar, 0, len(ar)-1)
제가 뭘 모르고 있는 것인지 좀 찝어주세요.... 감사합니다...