게시판 즐겨찾기
편집
드래그 앤 드롭으로
즐겨찾기 아이콘 위치 수정이 가능합니다.
안녕하세요 퀵소트 질문입니다..
게시물ID : programmer_7705짧은주소 복사하기
작성자 : SBear
추천 : 0
조회수 : 600회
댓글수 : 5개
등록시간 : 2015/01/19 18:37:28
옵션
  • 본인삭제금지
정말 질문 안올리고 해결하고 싶은데ㅜㅜ

저는 뭐가 틀린건지 도저히 모르겠습니다....

- 검색을 통해 퀵소트를 공부하였습니다.
- 퀵소트를 파이썬으로 구현하였습니다.
- 맞게 한 것 같은데... 잘 안됩니다... 뭐가 틀린건지 모르겠습니다..

소스 붙여보겠습니다
*******************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)


제가 뭘 모르고 있는 것인지 좀 찝어주세요.... 감사합니다...
전체 추천리스트 보기
새로운 댓글이 없습니다.
새로운 댓글 확인하기
글쓰기
◀뒤로가기
PC버전
맨위로▲
공지 운영 자료창고 청소년보호