low
및 high
는 두 개의 값이 필요 당신이 세 방향의 파티션을 할 수있는 세 방향 파티션, 즉 할 정의 된 값입니다 파티션이 발생한 위치.단계별 예 :
data = [ 3, 1, 4, 9, 8, 2, 6, 9, 0 ]
low = 4
high = 8
[ 3 , 1 , 4 , 9 , 8 , 2 , 6 , 9 , 0 ]
p^ i^ q^
[ 3 , 1 , 4 , 9 , 8 , 2 , 6 , 9 , 0 ]
p^ i^ q^
[ 3 , 1 , 4 , 9 , 8 , 2 , 6 , 9 , 0 ]
p^ i^ q^
,274,286,838,332 10
[ 3 , 1 , 4 , 0 , 8 , 2 , 6 , 9 , 9 ]
p^ i^ q^
[ 3 , 1 , 0 , 4 , 8 , 2 , 6 , 9 , 9 ]
p^ i^ q^
[ 3 , 1 , 0 , 4 , 9 , 2 , 6 , 8 , 9 ]
p^ i^ q^
[ 3 , 1 , 0 , 4 , 6 , 2 , 9 , 8 , 9 ]
p^ i^ q^
01,235 16,
[ 3 , 1 , 0 , 4 , 6 , 2 , 9 , 8 , 9 ]
p^ i^ q^
[ 3 , 1 , 0 , 2 , 6 , 4 , 9 , 8 , 9 ]
p^ iq^
알고리즘은 당신이 말하기를 : 요소 바닥 위의
- 스왑 (즉,
p + 1
) 바닥 아래 모든 것이 이미 확인 되었기 때문에, 또는
- 스왑 맨 위의 모든 것이 이미 확인 되었기 때문에 요소 즉 상단 (
q - 1
이하)이나
- 는를 남겨 중간에 속하기 때문에 요소입니다.
당신은 각각 하단, 중간 및 상위 파티션 등 [3, 1, 0, 2]
, [6, 4]
및 [9, 8, 9]
를 얻을.
다이어그램을 사용하여 더 자세한 설명에 관심이있는 경우 이해하기가 어렵습니다. http://techieme.in/dutch-flag-problem/ 이것을 확인하십시오. – dharam