빠 른 정렬 의 최선 의 실천
914 단어 데이터 구조
def partition(A,p,r):
# x
x = A[r]
i = p-1
for j in range(p,r):
if A[j] <= x:
i = i+1
A[i],A[j] = A[j],A[i]
A[r],A[i+1] = A[i+1],A[r]
return i+1
def quicksort(A,p,r):
if p
알고리즘 사상 은 에서 나 온 것 으로 빠 른 배열 의 가장 좋 은 실천 이다.
데이터 이동 과정 - 1 라운드:
2, 8, 7, 1, 3, 5, 6, 4
2, 8, 7, 1, 3, 5, 6, 4 // i j 2 , ,
2(i), 8, 7, 1(j), 3, 5, 6, 4 //j , 1,
2, 1(i), 7, 8(j), 3, 5, 6, 4
2, 1, 7(i), 8, 3 (j), 5, 6, 4 //다음 교환
2, 1, 3(i), 8, 7 (j), 5, 6, 4
2, 1, 3(i), 8, 7 , 5, 6(j), 4 //1 라운드 종료, i + 1 과 r 교환
2, 1, 3(i), 4, 7 , 5, 6(j), 8
이로써 1 라 운 드 는 끝났다.